I see you also posted this question on the forums:
Going with what Thomas Browett said in that post and what you said you’ve tried, using a custom PlayerController for your game would probably be a good starting place to look since you can access that blueprint no matter what level you have loaded as you play your game. You can also consider using a SaveGame in addition to that as you can set that up to locally save your variables from your PlayerController before unloading/streaming out a level and then restore the save when you load/stream in a new level.
We don’t have a lot of documentation available on SaveGames yet, I’ll see about getting a short write-up or tutorial put together that can explain how they work so you can get started with them and see if it suits your needs.