Wow, sounds like my workplace - pretty much the same story, except the two devs who wrote the 300,000 line monstrosity are already gone (worst page record: a page with one topic and 300 comments generates over 10,000 - yes, ten thousand - calls to MySQL, AFTER caching).
In our case, we're squeezing in a complete rewrite of the codebase around existing client work using the old platform. We're writing it as a few separate services (authorization service, content service, front-end, reporting service, and administration front-end) instead of a huge, monolithic app. To do this in a decent time frame (a few months), we're adding 5 or 6 contractors to a 3-person dev team, leaving 3 other devs able to deal with the existing platform.
How large is this code base?
If you guys plan out enough, a complete overhaul might be the best solution.
During your development you will have learnt so much that as a team you couldn't of had the forsight to know you were doing it wrong when starting out.
If your startup can maybe spare 3 of your best developers for the development of your new platform that might be a better way to go. There comes a limit in the evolution and growth cycle when you realise that you can't keep adding and you need a new clean slate.
A Second option might be to create your own DBAL. What is it about your data base calls that is innefficient. If possible, you might want to create your own DBAL with something like memcache paired with it in order to have frequent caching where possible.
If the developers are dragging their heels and really don't like their development environment, you could think of it as a nice overhaul to boost team efficiency.