non-mining nodes have no way of making money in the bitcoin ecosystem
Why do you think so? What about Lightning Network? What about casinos? What about exchanges? They don't have to mine new coins to get them.
but they can't inject themself into a transaction
It depends on sighashes. And if mempools will be permanently flooded,
then batching will be needed, and there will be services, which will batch transactions, and grab some fees for doing that. But yes, users have to agree on that, by constructing a transaction in a different way. And if you have a choice: create your transaction alone, and have 1 GB of other pending transactions before it will be confirmed, or batch it, and get it confirmed faster, then it is not that hard to imagine, that many people will choose batching, if that option will be available.
But how will the be batched? In the order on when the transactions were broadcasted? Because as the fees become a more and more important source of incentivization for mining a block, wouldn't batching shake up the fee market, and therefore shaking up the network's incentive structure too?
Plus if there's such a service that could put your transaction first in line before the user who paid a higher fee, how and by who is the service subsidized?