In the years when I earned less than the average taxi driver, we we wrote our code and didn't worry about health insurance. We received no subsidies, but the the state^Wpublic paid a lot, and then later the public paid for the products we developed. Unfair?
Those same small European countries have a lot of successful businesses. One might suspect that paying for innovation brings profit — on average. I personally think it does.
It's great that Moderna exists IMO, even if its existence involves paying both before and after the product reached saleability.
Moderna struck it rich. Most of the companies that are founded on the fringes of hospitals and universities don't, they may lead to someone owning a nice flat, if even that.
If you want to block the occasional startup from striking it rich, you either have to improve the deal in another way or accept that the innovation decreases. For example, if you were to pay all of the research instead of most, you might be able to get all of the proceeds from the successes and keep the innovation going. As I understand it, that's a big "if" because the countries that have tried it haven't been very good at picking the right research to fund.