Slightly off topic, but I have a seen a player deliberately handle a ball and still fail to prevent the goal. (Goalkeeping is harder than it looks!) What is the ruling in this case? I think the goal was called off, a yellow card issued, and a penalty awarded. This seemed like the wrong call to me, but curious I'm what surfref and others think.
As to the OP's scenario, the player who committed the foul did so while knowing the consequences, and it sounds like it was the right choice. Fouling is part of the game- as long as no one is injured, I don't see a problem with it.
If your friend cheated when playing golf with you, would you continue to play with him? How about tennis? Poker?
There is more to sports than winning at all costs.