UPROPERTY value keeps resetting on every compile

Yes.

Also happens randomly with blueprint classes that are children of other blueprint classes, though no definite answer on what triggers that.

I typically set my variables in a Data Table and initialize them in my construction script or onBeginPlay. It’s a real pain and semi-complicated process.