If i’m understanding correctly I believe for what your talking about you will need to store your variable information in the Game Instance so it can record it before one level is unloaded, and pass it to the new level after it loads and then passed to the new version of the widget. The Game Instance is a singleton class which basically means at the beginning the .exe starts up, there exists only one unique version of this blueprint. until you close the game its the same one the whole time. the Game Mode exists for the duration of the current level, so any information stored there is lost when the level is changed. This includes any widgets, actors, anything you may have had the game mode add to the players viewport if it came from any blueprint other than the game instance blueprint.
This is a pretty decent tutorial to understand how to create your own custom game instance so you can pass information back and forth from it: https://couchlearn.com/how-to-use-the-game-instance-in-unreal-engine-4/