I would like it if Metamask connected to a distributed hash table of Ethereum node providers and sent transactions to random subsets of those nodes. Then if there was some way to track the reliability of these nodes to make some kind of ranking of quality. Perhaps the client (Metamask) and a given server could mutually sign the transaction so when it eventually makes it into the mempool it is clear who put the transaction there.