I posted something similar in the other thread. Nodes should check that fees don't exceed the average of the last 10 blocks highest fees. If it's significantly higher, send a return message back asking for confirmation of the fee. Nothing to do with miners as it is on a node level, and in theory, a mistaken fee shouldn't enter the network beyond the first node it reaches, which would hold it and require a signed message from the sender to confirm it is correct.
I'm not too clued up on the core protocol, I use nbitcoin and BitcoinLib for making transactions and sending them off to the network through my testnet node, so not sure if it's possible without changes to the nodes and wallets.