Does a variable cast back to it's value whenever it's accessed?

Depends on the usage… e.g. how often are you casting to the same actor?

Good example would be the animation BP casting to the character class every frame.