Moving it into a game with PKHeX won't notify HOME that it was moved, so the tracker wouldn't match their expected state (thus it would still get flagged by them). {X} tracker on game {Y} is valid, but {X} tracker on game {Z} is not valid.
PKHeX aims to mimic the official behaviors, so it mimics the move reset logic. The program has a "LegalityRejuvenator" which detects the original relearn moves to try and keep things legal, but it does not attempt to migrate the prior moveset.
If the logic were changed to try copying moves, it would have to try and do it legally (including setting all moves and any relearn flags) from the original. Chances are, you're going to want to validate the moveset copied over, so just copy it over yourself? If you're wanting to bulk move thousands of files, I would recommend using PKHeX.Core with LINQPad to write your own c# script that converts each file, copies the moves and sets the relearn flags, and compares the movesets, and puts them in separate folders if they match or are illegal.
PKHeX has PKHeX.Core available as a code library, and others have written plugins to override/enhance behaviors. Anyone can provide a custom IEntityRejuvenator implementation that maintains a facade of HOME's database and custom migration behaviors, but it's not something that the regular PKHeX aims to do.