Games cost money to develop. Unless a game is open-source, you either pay a fixed price initially, or have microtransactions. The problem is when they get greedy and do both / make it pay to win. Selling cosmetics does not affect gameplay, so I don’t mind them doing it.
Most players I know do not pay for cosmetics. ‘Whales’ - rich people who want to show off, or who love the game and want to support it - buy them. Some streamers also buy, but they get compensated by their sponsers. There is the occassional case of a kid buying it with their parent’s money, and such purchases should definitely be reversed, but otherwise I see nothing wrong.