Is there any conceivable way to prevent out of band txs? (answer: not realistically). To the extent they are bad, we ought to not plan to rely on the altruism of users for the long run. Without tangible incentives to use public mempool instead, we better start learning to live without all the useful services/information that we might prefer for it to continue to provide. (the same goes for coming up with tangible incentives to use op_return instead of witness inscriptions)