Don’t make any more changes, and do not do any more saves in the game (Your decision was right). For now, immediately make a save back up for each game.
My personal hope, as improbable as it is, is that the data is still in the backup. (After gen 3, each save as has 2 segments). Just to let you know, if many of them were stolen from the same save, the they would likely have overwritten the save multiple times. If if was via poke transporter, I’m hoping it is a “they took it all once and didn’t touch the game again” scenario.
If that fails, the next best thing will be recreations based on data that may exist within the save. Maybe it is hiding in the Hall of fame. Maybe in competitions. For certain games that allow a different trainer to be saved for battle purposes (maybe battle tower, Secret bases etc), maybe we can try looking there. It won’t be 1:1, but at least if the crucial data is there, we can do a “best match recreation”.
what would be good would be excel file with pokemon species, nickname, and moves to be expect, and origin game it was caught in, etc. for your favourites/stuff you wanna grab back.