It wouldn't be a problem if they auctioned the World Cup hosting to the highest bidder.
But what actually happens is they present it as a competitive process to select the country/countries with the best infrastructure and legacy for the tournament (new stadiums, transport links, local investment, development of young talent, etc), make them spend a lot of money on the bids, get free trips to visit the proposed locations, and then just ignore all that and give it to whoever slips the voters the most money behind the scenes.
It's the charade that makes it illegal. Effectively they are auctioning it off while pretending not to.
I always thought this charade was a pr move to make it seem like a legit competition for the public but actually, contractually, be a plain old bid/auction with the countries involved.
Like when they draw the winner and act surprised etc.