Could there be a small "lucky" part where a part of the transaction fee goes into a pot and once in a while the pot is given to some random wallet?
I suggested something like this for NXT but it was ignored. It kind of like a bonus lottery...
I would like to implement such that block forgers cannot include their own transactions for free; where if they want to send transactions in a block they forge, then they perform the following:
1) determine the lowest fee paid for a transaction in the previous block generated. Trasactions belonging the block forger that he wants to include in the block must have at lease this fee assigned, or higher if selected.
2) use a defined algorithm (TBD) to select an account out of the previous 10 blocks that paid fees for transactions. multiple transactions with 1 account doesnt give you multiple chances, so if you had just 1 transaction you have equal chance of being selected as someone with 1000
3) the block forger takes the number of transaction of his own that he wants to include in the block and then multiplies by the figure obtained in #1 (or a higher fee than that if he desires, but at least that amount), and includes a transaction sending that amount of NXT to the account selected in #2. all his own transactions in this block must set the fee to value obtained in #1 (or higher if desired), as those will be returned to him if he does indeed forge that block. So as long as the math works out between these steps, the network will validate the block he forges.
4) if your own account is selected to send the fees to then the algorithm chooses a different account. This is to reduce the chance that exchanges with their high volume get their own free fees
This structure effictively removes fee forging and makes a cool/fun little bonus lottery that encourages people to use transactions since then they become eligible for the lottery.
I had to analyse this a little but looks like a very nice system indeed !