But wow does this guy not understand an MVP or what matters for a startup.
> I became more and more “aggressive” about reducing the scope and focusing on the essentials
You should do this day one before you write a line of code. There should be nothing you can cut from your MVP. For the first two months of my last MVP to edit data you sent an e-mail to a dev who wrote a sql script that edited it for you. We still added 3k MRR each month. For every feature you should ask "What would happen if I cut this out?" if the answer is anything but "It literally wouldn't work for any individual who could conceivably use this product (with a broad definition of conceivable) then the answer is cut it. Is it a differentiator? cut it. Does your product suck without it? cut it.
You can always trade time for features, but you can never trade features for time.
> Maybe I obsess too much about code quality
The answer is YES YOU DO! Code quality doesn't matter. It really doesn't matter. What killed your first three startups? Was it code quality? Or was it was not getting out a product fast enough, not iterating quickly enough, and not finding product market fit fast enough. This experience is typical.
If the code quality on your MVP doesn't physically disgust you, you're probably focusing on code quality too much.