Sinking ships usually gets me pretty good sailing xp, the land enemies just don't seem to give it for some reason, probably a bug, it is beta after all.
But for real now, more shots hit means more xp. Have your round shot and broadside on 1 so it takes the longest to kill. Find a war galleon and disable the sails, then move to the front so it can't hit you and whittle it down with broadside until it sinks. Doing so should get you about 100 rep a ship.