I don't think it should be removed, but we need to make it a bit more permissive. It's a real problem when you only want to hop on the enemy's car to finish them. Maybe a time limit would be enough to make this possible. For example, removing the surfer only after 5 seconds. That should be more than enough time to finish an enemy in most situations.
This restriction was implemented to stop terrorists from giving rides to cops and vice-versa. Also, some civilians were taking advantage of their friends' team protection, using it as a Joker card to escape from dangerous situations. In extreme cases, I've even witnessed vice-presidents chasing presidents with sniping civilians on top of their cars.
This kind of behavior is never fair for the other side. How is security supposed to stop vice-president's car packed with hostile civilians trying to kill the president? Security can't damage the car, and they can't damage civilians if the distance is long enough so they are only in sniper range (players surfing an occupied vehicle can't be damaged with snipers).
Of course, we could just remove the system and let the staff punish drivers who engage in this kind of anti-team play. But it's not going to be nearly as effective, as we are only going to catch a small percentage of all team block cases, and it's an open door for disputes, people who think the punishment is too severe, and endless forum drama.
It's not a secret that Jonne's strategy is to make everything as automated as possible, so there's almost nothing left to an admin's subjective decisions. Prevention of spawn-kill is almost fully automated, same with team-shooting or the "no vice and presi in the same car" rule. We should just see this as another step in the process to automate rule enforcement.