I managed to catch a sailor in the act of committing suicide, so now at least I know one reason as to why that happens.
Basically, they can get a bit overexcited when they run to the edge of the ship, and may have a wee bit too much momentum for their own good. I think he actually hit the water before the poop he was carrying did.
But I still don't understand how the others wind up drowning. I actually came back at one point to find a couple seamen had somehow managed to worm their way underneath the ship, in a place that's not possible to get into. I can only hope and assume that having a double-block thick floor in all important areas will help solve the problem.
Also, you can "bootstrap" the ship design, placing blocks and then removing the ones that were supporting them, and then placing more atop those new blocks. By doing this, you can make flying pirate ships that hover above the surface of the water (the game doesn't seem to make any complicated checks for bouyancy or physics when calculating the ships, and instead just takes the grid matrix of blocks and moves them in a wavy way).
If you want to attempt making a particularly large ship, make sure to fill out vertically before extending too far horizontally. Pirates seem to have some sort of superstition about going too far aft, and will refuse to move beyond a certain point.
Ran into the "no fighting" bug a couple more times, consistently. It seems to be triggered by someone falling into the water when there's a fight going on. It can be resolved by exiting to the main menu and then reloading (do be careful if you're doing this in the middle of an encounter, though, as the enemy ship disappears if you do. Meaning, of course, that any of your guys who were over there will plop straight down into the watery abyss).