You trade up. I have a friend who has thousands of dollars worth of CS items, he has never spent a single cent on any of them - you play, you gain some items, you sell them which adds money to your steam account, you use that to buy something else you think might be worth something in the future.
They are. But most of the time they are spending $2 here and there, which is much easier to convince your parents to borrow a credit card for. After all parents are already spending millions(billions?) of dollars on roblox, what's a few dollars for yet another online game. Kids aren't the ones buying $20k skins, but kids are definitely an important part of this economy.