For my ships, regular army attack bonus has always applied (if theyre fighting units not buildings).
You probably didnt send your hero along with your ships. If ships are sent separately, they obviously dont get the bonus. Doesnt matter if they were matched to arrive at the same time with the hero and the reminder of your army.
If you want your ships to have regular army bonus, all your land army has to be on transports and sent out alltogether.
Those image fragments you posted reveal nothing, but im pretty sure your hero and cavalry were not on transports and were not sent out along with those ship-o-lines.
I agree that the wording of some perks and such is confusing to say the least and incorrect completely at times.
For example '...increases other unit's attack/armor/health if they are fighting alongside hero' - if sent out separately but matched to arrive at the same time, all the units are fighting alongside hero, but bonus applies to those only that were sent alongside hero.