I think the rules are "stupid" only in that it would expose too much fraud if the companies followed them. Crypto currencies are no different than any other speculative asset for tax purposes. Treat them like stocks.
What if you burn some ETH on gas fees while interacting with a contract? Is that considered "sold"? Can you write it off as a loss? Does that contribute to wash-sale limits? People like to jump to analogs because it's easier to make sense of, but maybe we just need a new treatment of crypto altogether?
Transaction fees are completely normal. In-kind transaction fees are maybe a little less normal, but they're definitely something that happens. GAAP will have rules for dealing with these things.