This is an extremely politicized question in the US, where a public health insurance option (a solution that's popular in much of the rest of the OECD) is fiercely opposed by a large swath of the population.
At the very least though, in an ideal world, payers, providers, pharmacies, and PBMs should not be allowed to be part of the same company.
Just force price transparency. Force drug makers to advertise the selling prices of their drugs, and enforce price discrimination laws. Force insurance and PBM companies to advertise the drug prices if purchased through insurance or PBM. Everybody should be paying the same price. And if not, everyone should be allowed to find out if they can pay a lower price.
And yes, get rid of PBMs. They are toxic middlemen who want their 'cut' for doing nothing at all.