Private payments can easily solved without a blockchain. For private payments you don't need a completely trust-less system. Taler[1] solves this quite elegantly: they provide completetly anonymous payments for the customer but still require the merchant to be 'on-record' to make money laundering harder/impossible. For that they rely on a regulated and trusted party as you would with a regular payment provider or bank. No proof of work needed, no value volatility, just an online representation of cash with accountability for the merchant built-in.
Of course, this also means that your second point is still valid for Taler: The involved trusted parties could collectively decide that they want to discriminate against certain merchants, in the same way the current payment providers did.