I think the worst part of limited ammo is I can cheese the AI, as a last resort. If player cannot outflank or outgun the enemy, but enemy has limited ammo, the most effective strategy would be to make the enemy run out of ammo, even if it takes several minutes to make it happen. For example, bring a Medusa or other ship that can shield-tank or dodge shots indefinitely, wait until enemy ship runs out of ammo, then kill the defenseless enemy ship.
For the player that runs out of ammo, all it means is the player needs to retreat from battle, take the CR% hit, and re-engage for another round with full ammo. You still get all of the XP (but maybe not loot) after you win the encounter, whether it takes one round or several.