Unfortunately, it is all up to personal taste and how you want your navy to look and how much you are willing to spend. When it comes to battle and defense, you can never have enough. At the bare bones minimum, you need one ship in every harbour you own. In reality, you purchase enough to not go bankrupt.
I am a big fan of Fire ships. they are fast, cheap to buy, cheap to maintain, have good accuracy and can do decent damage. Granted they will not do the damage that a Paddle Ram will do, but I can almost buy double the Fire ships compared to paddle rams.
I also like Ballista ships, they are fast, more accurate than mortars or catapults and do more hull damage when ramming (than a mortar or catapult ship) when the ammunition runs out, they are also cheaper to buy and cheaper to maintian.
As for how many I have. I generally keep 20-30 total ships in each of my harbors. In my home harbor I also have some paddle rams and Dive boats for offense when I think I may need to blockade a harbor.
Hope this helps.