A note about 300, they were also defending a very narrow passage that meant the enemy could only have a small number of their units in battle at any given time. If a passage is 10 men wide, the enemy can only have ten or so of its men in combat, so what you're doing is negating their superior numbers by turning the larger conflict into a series of smaller force battles.
If the Spartans had engaged the Persian invasion force on an open battlefield, they would have been slaughtered very quickly. Combined forces vs sheer numbers is a valid point, but there's a tipping point beyond which it doesn't matter how varied your fleet is, if you're outnumbered 10 to 1, chances are you're going to get your butt kicked.
In the games I've been playing, I've found combined forces working very well against fleets with a more narrow difference. I've done 3-to-1 battles before where the AI churned out a lot of cheap frigates, and my force with a mix of cannon fodder and more specialized ships made short work of them.
And a well-managed fleet will do more damage in general. I usually have my forces focus on one or two targets at a time. It's better to take one 1 ship quickly than 2 ships over a longer period. The longer an enemy ship is in the fight, the more damage it does to you.