Data infrastructure in the real world, for non-trivial systems, moves slowly. Migrations are costly and risky. If you need to optimize query performance, you are likely working on one of those non-trivial systems. We have some MongoDB clusters at work (one in my team). Would we have picked it today? Maybe not, because the mindshare isn't there. Does it work fine right now though? Yes, definitely, we have no issues really (the suck in that system is elsewhere).
Absolutely, that's a very practical approach to take. In reality, the optimal solution for databases doesn't necessarily match what people would select right now from scratch.
If a system is working fine, the expense and risk of moving may end up being far greater than any optimization efforts on the existing database. This is also why I believe profiling tools, explain plans, and indexes are all useful; there are plenty of cases where MongoDB is sufficient but still needs optimization...