There is actually a mechanism for destroying tokens. From the white paper:
In order to compensate for the ever increasing precision, the STEEM network performs a 10:1 “reverse split” every 32,000,000 blocks (about 3 years). At this point in time all balances of STEEM are divided by 10 and all prices are multiplied by 10. Cryptocurrency exchanges will have to suspend trading around this time and update the account balances and price history to reflect the “reverse split” before resuming trading.
That's just a technical detail due to the way we represent numbers on today's computers. No tokens are destroyed, it's just that we shift the accounting a by a few decimal places. It's precisely the consequence of generating tokens forever without destroying them in any way :)