2. You may also need an audience. You need people to use your product, and that might mean you need some kind of free tier to lure them in. In my case, an events guide which doesn't list all the events people want to see is useless to my audience, and if the audience don't use it it's useless to my potential clients. That means I have to provide the basic service for free - any monetised features are worthless without it.
3. For any skills you're lacking, learn them. If you outsource your front end work, you've got to pay somebody every time you want to change it and you can't reuse it anywhere. Once you know what you want to do, learn how to do it by actually doing it.
You're absolutely right that any money earned from your own pet project will be far more satisfying than your day job, but that's because it's that much harder to earn. If you start down the road with the specific intention of earning, that road will be paved with frustration. Get an idea, develop it into a prototype, get some feedback, and then you can start looking at outsourcing some of the more polished parts that are still outside your capabilities.