This a lot of code to go through and debug, did you follow this tutorial? This is what works for me: https://dev.epicgames.com/documentation/en-us/uefn/using-persistable-data-in-verse#required-weak-map-with-class-type
Persistent data is one of the hardest aspects of Verse coding so I recommend being very comfortable with the language before you use it, otherwise many problems will occur. A better way to store persistent data if you are only storing something like money is to use stat creator devices, then you don’t have to code the persistence stuff yourself.