Wow, I feel so stupid again. theSLAYER was exactly correct.
I loaded the file with visualboyadvance, deleted the save file while it was running, used visualboyadvance`s built in save state function to generate a .sgm file, closed visualboyadvance, reopened with visualboyadvance, waited to make sure it was starting a new game, loaded the sgm saved state, made sure the save type was flash and 128K flash, then used the game`s built in save function, then loaded the .sav file it generated in pkhex and it works this time. I honestly don`t know why that worked and just changing the save type and saving without going through a .sgm caused the emulator to freeze, but it did. I`ll let y`all know if this method breaks in the future.
Once again, thank you theSLAYER!