Change playerstart's location before load level?

I would try overriding the ChoosePlayerStart function in your game mode blueprint. That function will run when the player is created. Do your load PlayerLocation_Save logic there. The output is an actor, so I would spawn a temp actor (a Player Start, an empty actor, anything really) at the PlayerLocation_Save and output the actor. You can then destroy the temp actor afterwards.

You also have the FindPlayerStart function that would be called if you reset the player when the level is already loaded.