A good solution would be to reduce the time it takes for an egg to hatch.
Or better yet, what's actually happening, where TMs aren't limited items.
As seen from the fact that most players already reduce the amount of time it takes to hatch eggs by keeping a Pokémon with a particular ability in their party, reducing the amount of time it takes an egg to hatch doesn't eliminate the possibility of long RNG screw. You could still be stuck hatching eggs for days to try to hatch a Pokémon with multiple egg moves and the right nature. When you can instead just use TMs to give the hatched Pokémon those moves, you're only hatching for nature at that point, which is a highly preferable situation.
While that may be true, two Pokemon that have the same nature, moveset, name, and were caught by the same trainer would have nothing different about them other than EV distribution; even then, you can remove their EV distribution and make it the same. It's very difficult to get two Pokemon with the same IVs, essentially making about every Pokemon unique.
This, to me, speaks more of how
Pokémon is incredibly flawed as a competitive game than anything about why IVs should be kept in the game. It's all just far too much metagaming.
Why should I have to do that just to play a game I like online?
That's an odd way to phrase it, considering using a simulator is faster in every way than playing on the actual game. And I'm not saying you should have to do this. I'm just saying that doing that eliminates the chance of facing impossible Pokémon like the aforementioned Wondertomb, things that are entirely possible to go up against when you play with randoms the way you described.