Here's the problem. The issues they are facing are systemic to a government run plan. Every government run health care system, in every country around the world, all faces the same exact problems. Even government run health care INSIDE the US, faces the exact same problems.
There are only two specific ways in which you can not have the systemic problems to a government run health care system. First, you can live in a dream world for awhile where the government simply spends as much as is required to pay for the system. This works until the money runs out, which happens when they can't raise taxes anymore, or they print money non-stop until the currency is completely worthless.
The only other option is to not have that system. The common British citizen may not understand basic economic, and really think their system is good, but just needs "fixed". That doesn't change the fact it will never be fixed for as long as government controls it. That's all there is too it.
This is exactly what happened in the UK. When the program started, there was enough money to pay for it. But as it went on, the money ran out, and taxes started rising. Now the tax freedom day in the UK is June 25th I believe. Ours is April 13th. They work an entire two months and a week longer than we do, just for taxes.
Yet it still isn't enough. If you remember back in 2002 or 2003 or so, Blair tried to raise fuel duties (taxes) specifically in order to help rebuild the health care system. Perhaps you remember the farmer strikes in which farmers drove their tractors and farm equipment right to down town London and blocked off streets, shutting down half the city for business.
So the current problems, and postal code lottery, is the natural result of no money and a refusal to accept more taxes. It is systemic to all government run health care systems. The only way to avoid systemic problems is.... to change the system. Yeah the British public may not want to change, but if they want a fix, they've got to change. There's no alternative.