If you are using anything beyond a debug build with Unreal the code gets optimised, which will produce the issues you are seeing. It very much depends on how the compiler treats the code how easy to debug it will be when optimised.
However to save running debug builds you can just wrap code with some macros - UE_DISABLE_OPTIMIZATION and UE_ENABLE_OPTIMIZATION (or in UE4 PRAGMA_DISABLE_OPTIMIZATION and PRAGMA_ENABLE_OPTIMIZATION). Personally I usually mark the whole file I’m interested in.
If you do that you should be able to use breakpoints and see the relevant variables in the debugger - you may still hit optimised code as you step through if you go to a different file, but just add the macros to that file if needed.
Hope that helps.