It's a purely cosmetic thing, it doesn't affect the gameplay in any way.
Blizzard isn't selling in-game powerups through the store, just the character services and cosmetic items. Also, with the introduction of the tokens, you CAN buy these things with in-game gold. Yes, a lot of gold, but if they were cheap people would complain that it's not a special thing because everybody has it.
They have done charity pets in the past, with all proceeds going to a reputable charitable organisation. Again, with the tokens, you can now exchange your in-game gold to help people in the real world. That's actually pretty cool, don't you think?
If you don't like the store pets, the obvious solution is not to buy them and be done with.
Edit:
Your subscription fees mostly pay for server upkeep and patch development. That pet will largely pay for itself, through people buying it.