What I see as the main structural problem is the offer of pretty much blanket protection from the market that the people/govt give to the pharma companies. Many shills continue to argue that this is necessary for pharma to make progress.
The problem is that this entirely quantitative question: how much protection should pharma companies receive that would still not get in the way of real progress?) is given a blanket answer by fiat. No one knows the answer to this quantitative question, and neither is that dollar amount a constant of nature. Any mechanism addressing this problem should have a fast feedback loop.
Rather than subverting the market, one should actively create an efficient one where the people/govt and the pharma companies negotiate the level of protection that they can both agree on. Patents are a mechanism that largely nukes this negotiation in completely favor of the pharma companies.
A parting thought borrowed from Upton Sinclair : if the justification for patent protection are high dev costs, it only ensures that the dev costs will be kept high to enjoy the (dis-proportionate) protection.