It is somewhat necessary though. Low population realms would instantly be abandoned. High population realms would become even more crowded. Economies would go weird as gold is taken to and from the server all the time.
If they made race changes / etc free, people would just swap to human for PvP or to whatever class is best for their PvE racials. I imagine it would have some impact on the game if it were made free, though I agree it could do with being a little cheaper.
If we're talking business though, from a business perspective, I'm sure Blizzard are thinking no, this is very good for our business.