Short answer: no, you don't have to work at another company if you don't want to - in fact, it might actually hold you back!
It sounds like you're able to work and pay your bills, and also learn Android / do your own development on the side. That's a great position to be in! That means you can learn by actually doing on the side, and not worry about getting paid for it yet.
The best advice I can give is to keep actively working on your own Android apps. I would pick a small (tiny!) app idea that you have, and build that completely and actually release it. It doesn't have to be great (it's your first one!), and doesn't have to be world changing - it just has to actually work.
You'll learn SO MUCH by releasing an app from start to finish. Anytime you run into something hard - that is when you're learning. Lean into that feeling! It's going to be a struggle, but it will be so worth it in the end.
If you go to work for another company, then what you'll be learning is their processes, and their way of doing things - but it sounds like what you really want to do is to do your own thing! So you won't be learning as much as you may think you would at another company.
So: I wouldn't quit your current job (as long as it's still going well for you) - and I wouldn't expect to make a bunch of money quickly by making your own apps... but still make them! You'll learn so much.
And later, if you want to, you can always go work for a "real" software company. Plus - BONUS! You'll have actual, real apps to point to in the app store, so you'll be able to ask for more salary, or a better title, etc.
I hope that helps! I'm happy to answer any other questions. I would only go work somewhere else if you REALLY want to. But if you really want to just develop your own apps - then just do that!
It sounds like you're ready now :)
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.