That is correctly illegal, PKHeX is working as intended, it is not "100% LEGAL". Why do you think your starter pokemon should have a move that is only learned via breeding, when it was never an egg/didn't hatch from an egg with parents that knew that move? Move legality is determined by the encounter details, not just "the species can learn it, so it's fine".
If a move is learned via breeding, it has to be learned via breeding, not by you editing it onto something that was never an egg.
I also can't replicate the Geodude issue at all, the one I caught ingame and the one from the encounter database both appear legal. Either you modified it to make it illegal, or you used glitches that changed some value. Please provide a pk2 file for it as well.