I've never found a ruleset for it but I have a system that I use instead. Basically, a ship of any kind is a very large and complex machine. A steamship or airship would have several stations that each require management. Each player would have a station can crew to manage and might have to go help at another one if needed.

The helm controls direction and speed and would manage the deck crew. They would have to manage adjustments to the altitude, attitude, direction, speed, top deck cargo, and signalling other ships.

The gundeck handles the guns (obviously). They have to select a target, get the helmsman to point the ship correctly, aim, load, and fire the guns, as well as keeping ammunition supplied.

Damage control is something that has to be done in combat. These players would be moving around the ship fixing damaged equipment and bulkheads, securing loose cargo, and healing wounded crewmen.

The engine room has to somehow keep the engine running, fix any damaged mechanical parts around the ship, and keep the balloon functioning.

So there's less D&D style combat and more skill checks and creative solutions to problems. The players wind up divided and trying to help each other accomplish tasks. It's a really chaotic and confusing situation for everyone involved, just like real naval combat. You're not going to get real mechanical solutions for this in a D&D style game, it doesn't really work. But with some creativity you can make a very engaging environment for your players and give them satisfying moments for sinking pirate ships or running a blockade or surviving a storm.