Is there any sort of limit as to how many officers a Captain may promote on his/her ship to the appropriate position?
Promotions in Starfleet need to be ratified by Starfleet Command. Although a Captain can promote someone with a temporary (or "brevet") rank, this still needs to be confirmed at a later date.
Theoretically, a Captain who went mildly insane could brevet promote every single person on the ship to the rank of Commander but these promotions would be cancelled as soon as the ship came within communication range of the nearest starbase.
The best case in point is Nog in DS9: Valiant who was offered a brevet promotion all the way up to Lieutenant Commander. This was never ratified by Starfleet and the following episode, he's back to being an Ensign.
I'm unsure of the Klingon tradition regarding the permanence of temporary promotions. In TNG : A Matter of Glory we learn that promotion can be secured either through direct promotion or by killing or incapacitating a more senior officer. Riker takes temporary command after tricking the Captain into leaving the Bridge in the middle of a conflict.
KARGAN : You should have killed me.
RIKER : I don't want your command.
KARGAN : You tricked me so you could have it.
RIKER : And I give it back to you now.