I have recently caught a shiny, golden Pokémon in Pokémon Emerald leading me to ask is there a limit to how many golden, shiny Pokémon I can catch?
There is no limit to the number of Shiny Pokémon you can find
Shiny Pokémon occur very rarely, but the chance of finding them never drops below the default amount. In Generation 3, there's also no way to increase the chance of finding a shiny Pokémon; therefore, it's a constant 1/8192 chance of any particular Pokémon being shiny. Later Generations have various ways to increase one's chances of finding a shiny Pokémon, and many people have quite a large number of them.
For more information on shiny Pokémon in general, see How do I catch a "shiny" Pokemon.
There Are 386 Pokemon which CAN be caught as shiny in these games
Hi and welcome to too much information. In generation 3, Ruby Sapphire, Emerald, and FireRed and LeafGreen, the chance of finding a shiny pokemon is 1 in 8192 encounters. This is NOT, however, guaranteed, as after 8192 encounters you still have the same exact chance as before. Additionally, in these games, there are no "Shiny Locks", meaning that if you have the patience, balls, time, and endurance, you can and will be able to Soft Reset any legendary encounter into being shiny. This is also the reason why the only Shiny Mew currently legitimate and legal in any pokemon game MUST be japanese, and MUST be from generation 3, transferred upwards, as generation three japanese games received an event called "Old Sea Chart", which gave players a special event island to travel to, where they could soft reset for a shiny mew.
Finally, in generation three, with enough resources and patience and time, 386 pokemon can be obtained (there are only the first three generations available in the code). Your answer is that There are 386 pokemon which have the possibility of being encountered shiny in generation 3 games