As annoying as it is to do what I did for a while was train in the patch of grass outside Mt.Silver and fish for Gyrados inside Mt.Silver Cave.
If you can get a Lucky Egg this'll get a lot easier to do by the way, really helped me.
Credit to .Impact for the sig & avy