I think zam might be better than Egg honestly. Results vary as sleep explode 2 for 1 is obviously great but its far from guaranteed that you get that. Zam is honestly a rock in RBY and an extremely consistent reliable poke that harrasses and spreads pars, and can step up and fight the odd random matchup (zapdos, lapras, etc) in a pinch much like snorlax can (difference is lax is a universal offensive threat, while zam is a much more conditional offensive threat where walls must be first eliminated).
Egg is much more matchup dependent, where the only real matchup I see him being better than Zam unquestionably is vs the grounds. Egg is boned by some random matchups (again, Zapdos, Lapras, Jynx). You can say explosion is the equalizer but a lot of the time egg takes a lot of chip/par from trying to get off a sleep early on and often it can't afford to eat a DP or blizzard or whatever once the time comes for that.
I think the core of RBY is Zam + Chansey on defense and Lax + Tauros on offense. You can accessorize the other two slots in lots of different ways but I think these 4 pokemon give the absolute most consistent results. Egg's big draw is that nothing else in the game can really switch into golem or rhydon, especially not par'd, so that is a huge defensive help.