1. Outsourcing complete development (So that I just have to tell them my idea, and they will help me define the specs and suggest features) and they will pick the right devs.
2. Hire individual freelance devs myself from a freelance marketplace and manage the project myself.
Which one would be better?
Ask the following questions yourself.
Do you have deep domain expertise in your target industry? Do you have prior expertise in planning and prioritizing product development roadmap? Do you have experience in validating hypotheses based on real customer feedback?
Do you have experience in architecting a scalable technology stack to accommodate customer demand?
If the answer to the above questions is “No”, you should definitely consult with a person, or a team who is experienced in “Product development”, not just “App development”. I repeat, there is a huge difference between those two.
Again, this can be a time taking process and you’ll definitely have to spend some money on it, but I'd say it’s worth the investment.
On the other hand, if you are a good product + project manager and understand some tech, you can hire a bunch of freelance devs and execute the project yourself.
So, it all depends on who you are.