The Dragon Lord
Nobody's robbing anyone. It's just the rules of a Pokémon battle that the loser hands over a portion of their money. Yes, it's odd that Team Rocket would hand over money, but that's only because it wouldn't be worth the effort to program them any differently than any other trainer.I did always imagine the Trainers were stealing the kid's lunch money. What's funny about it is the rival goes through the area ahead of you, so the kid's getting robbed twice. And despite it all, the only thing he's worried about is his shorts.
At least when YOU lose a battle it's kind of explained (the Pokémon Center is free normally, because it takes half of a losing Trainer's money as a sort of fine for getting all their Pokémon beaten so badly). But it definitely makes little sense that Team Rocket would just willingly fork over hundreds of dollars when they lose.