It's a problem but I don't think that there's a middle ground solution to it, even in the latest Battlefield games empty vehicles still appear on the map.
In BF1942, BF2, all the time I remember checking the map to see what vehicles were open for taking in the enemy's spawn and whatever was missing would tell you what the enemy was fielding and what you had to prepare to counter or evade. Any time a flag is captured and vehicles spawn you check to see if anything disappears to get an idea of how fast they're moving. It's not a big deal when you have a server of 50+ people since it's much harder to keep track of but even then you can at least pay attention to what is only a few meters away from you, so you'd have a few seconds of warning if you had an attack coming from a vehicle. And that's why I always drowned my jeeps in a lake or something if possible, or went the longest way possible on foot. In the tournaments, it didn't happen that often but it was a tactic to have one person remain inside the vehicle for several seconds after everyone gets out, or to drive it elsewhere.
In my opinion the map shouldn't even be visible and only accessible after a considerable delay and even then should never relay the position of any person or vehicle, not even yourself. That's the extreme option, I like it because it makes everyone a bit more cautious about their surroundings and needs an even more heightened awareness as to what is going on, be it sounds or flocks of birds. Of the latter I don't remember if that's still in FH2 but honestly it should be removed, but that's a topic for another time.
The alternative to that is adjust the range that empty vehicles begin to appear on the map to something really short. I have no idea how that is achieved and if it's possible to do without changing the range for every single thing.