I think there's some middle ground that could be found here. For arguments sake, how about:
1. A drug company can charge whatever it wants for a drug until some predefined multiple of the cost of developing the drug is recovered.
2. After that point, the patent expires and its up to the free market to determine prices.
Set the multiple of R&D costs high enough that it allows for the low success rate of drug research, and you have a model that still encourages risk taking whilst preventing profiteering.
Also, this proposal means that while the patent is not expired, production is still monopolized.
And there is the issue of testing vs. research. There is an argument to be made that drug development isn't the hard part (or at least not always). The hard part is figuring out how to use the drug, and doing clinical trials to prove efficacy and safety.
E.g. we currently live in the wonky situation where there is little incentive to discover new uses for existing out-of-patent drugs. It's much more worthwhile to find a new drug that does the same thing.
I think patents-as-monopolies are a bad idea. A citation-based subsidy and/or fixed license fee, preferably on a decreasing schedule with a capped or only slowly growing integral would align motives with outcomes more clearly.
I mean, I don't see the problem if research becomes independently specialized from exploitation.
1. A drug company can charge whatever it wants for a drug until some predefined multiple of the cost of developing the drug is recovered.
2. After that point, the patent expires and its up to the free market to determine prices.
Set the multiple of R&D costs high enough that it allows for the low success rate of drug research, and you have a model that still encourages risk taking whilst preventing profiteering.