Maybe it should be left to individuals to decide if they need to avail themselves of free products of this nature. Some things are so cheap, eg aspirin and paracetamol, that I think most people who feel they can easily afford to buy them, would be willing to do so.
It's a tricky issue though. If a doctor were to make comments to the effect that they can be purchased over the counter, it might make some people who are genuinely struggling to make ends meet feel embarrassed and/or guilty. They may then feel obliged to pay for things they can ill afford - or decide to go without.
I think ongoing conditions that seriously affect people's lives, for which expensive creams and medications are needed, there should be no charge, whatever the economic status of the patient.
Means testing is, in my view, a blunt instrument because there will always be people who have a low income, but not low enough to qualify them for benefits. It also costs a lot to administer.
Whilst it may be true that treatments in other countries may, in some areas, be superior to our own, there is also the issue of whether such treatments are readily available to everyone or whether some people lose out.
A Kings Fund report covering, I believe, the period 1997-2010 concluded:
"The evidence shows that the NHS is performing well compared to other countries' health systems, although there is still room for improvement in some areas."
It may well be that the situation has changed since then because of austerity policies and an expensive and disruptive re-organisation programme. The reluctance of this government to fund permanent nursing and medical posts, instead relying on very expensive agency staff, has pushed costs up significantly.