So overall, I would say right now, transaction fees are largely meaningless and it is weird that we are even paying them at all.
Even if transaction fees weren't collected (say, they were all destroyed instead of being redistributed to miners), there's an important reason why we have them, and have them set up the way we do: preventing DDoS attacks on the network. If we had no fees right now, someone could announce endless free transactions, and the whole network would try to relay those transactions around. As it is, only paid transactions, and
"worthy" free transactions are relayed by standard clients. You could still try a DDoS (choking one node), but the standard clients won't accidentally join you in your attempts (thus choking the whole network).