So in a year or two when the returns of mining bitcoin reach zero, what's going keep bitcoin alive when there is absolutely no [monetary] incentive to compute the hashes?
. . .Transaction fees are fees that are applied to transactions that are considered "spammy" and use lots of network resources, . . .
Transaction fees are also voluntarily applied be people to their transactions if they want to speed up the processes of getting them confirmed. Miners are able to choose which transactions they include and which they don't. If there are enough transactions with fees, a miner is likely to leave out transactions with no fees (or low fees), so there is an incentive for individuals to include a fee with their transaction even if it isn't "spammy"