Passing primitive types by reference is not best practice. I’m not sure it even works with UE4. You can pass objects by reference but it might not work for primitive types because there’s really no compelling reason to do it like that.
See here c++ - Is it counter-productive to pass primitive types by reference? - Stack Overflow
and here Reddit - Dive into anything
Also, you have the MyVar property right there to access in the blueprint, so why would you need to return a reference to it?