There is a way around the naval problem;
Naval AI tactics seem to follow a similar practice as land battles... if you have a superior force the opponent will nearly always run away.
I therefore always do two attacks on a given group of enemy ships, both attacks need to be victorious, but the first attack will usually sink ony a few enemy ships.
The first attack causes the enemy to run... but as their vessels have now run out of movement points, the second attack will generally sink the lot (I really enjoy doing this when the enemy vessels is transporting troops or generals, and infact I will double check all enemy vessels I can see, Before I attack, them just to see they are carrying troops... these are then the vessels I will launch continual attacks agains until they are on the bottom.
Also, to tip the odds in your favour, try to get at least one of your ports producing better vessels than the standard.
(Must say I have seen one very odd ship wreck... I was finishing off a stranded vessel carrying troops and a family heir very close to shore - after the vessel sank the same family heir and one badly depleted unit of troops suddenly appeared on the shore next to the sunken vessel.
I reloaded the game and this time sank the vessel a bit further out... all drowned this time).