Is there any way to know when my Pokemon reached max EV on Gen I or II games?
On newer games you can actually talk to some Npcs that give you information about the EVs of your Pokémon, but what about Generation I and II games?
If you take a look at the Effort values page on the wiki, it states:
In the context of Generations I and II, the effort system is unofficially known as Stat Experience, or "Stat Exp." for short.
If you scroll down the page it brings you to a section on Stat Exp.
In Generations I and II, effort points given are equal to the base stats of the defeated Pokémon species.
The Pokémon data structure contains two EV bytes for each of the five stats (HP, Attack, Defense, Speed and Special), starting at zero when caught and with a maximum EV of 65535 for each stat. When a Pokémon is defeated, its base stats are converted to effort points and then added to the EVs. For example, defeating a Mew grants 100 effort points to each EV. (Defeating 656 Mew, therefore, will give a Pokémon maximum EVs in each stat.)
EVs are factored into the Pokémon's stats when it levels up. Additionally, EVs are calculated into stats when a Pokémon is taken from Bill's PC; this is called the box trick. A Pokémon which reaches level 100 can continue to acquire EVs up to the maximum of 65535 in each stat, and use the box trick to have those EVs factored in.
Vitamins add 2560 to one stat's EV, but cannot raise a stat above 25600.
At level 100, the formula for determining the stat difference between a Pokémon trained in that stat and an untrained Pokémon is
with the square root rounding upwards unless that would take it above 255, and the whole calculation rounding downwards.
EVs behave the same in Generation II as they did in Generation I. Both Special Attack and Special Defense share the EV for Special to maintain compatibility. The amount of Special EVs received is equal to the defeated Pokémon's Special Attack base stat. The box trick can still be used.
Generation II introduced the Pokérus, a rare status condition which doubles the effort points gained in battle.
Surmising from this, it does not appear there is any NPC that can give you the information you are looking for, and that you would have to calculate this by hand using the Pokemon's stats.
Well, there is no easy way to do this while keeping the Pokémon at a specific level like 50 for the Pokemon Stadium/2 cups, but if your Pokémon is level 100 you can beat the Elite 4(with the one Pokémon in question) and use the Box trick. If your Pokémon has the same stats as before the Elite 4, your Pokémon is likely at its maximum stat experience.
I don't know a solution for pre 100 level Pokémon.
You could of course also just beat wild Pokémon, but IMO Elite 4 is better except in the case that your Pokémon can't take them out by itself (a toxic doubleteamer might have problems).