I kind of fixed the problem, but don't for certain if that's the problem...
I had an event that checked a boolean called "gameStarted", and had an "trigger once while true". That event takes the config data from the dictionary and sets the items required to upgrade each area (forest, village, mine).
It triggers at the beginning of the game. But it seems that when saving and loading, it doesn't "remember" that the event was already triggered so, it sets again the info from the dictionary in the middle of the game (after loading from the game slot), thus overwriting the values loaded.
I changed it, instead of being an event that checks a boolean and trigger once, I made it a function, and run it on the main Init loop.
Hope this helps someone with a similar problem using load/save and trigger once.