Yes, it is most certainly a latency issue and is impossible to avoid without some trickery. Although it only occurs when doing something tricky, as for its standard function in standard use case scenarios it works well.
Yes, the update will make it much easier to rectify in these tricky cases. For now you can set the player transform position and rotation manually and locally (not using UCL.SetPositionAndRotation), then when an rpc is received use your values that the local character is at or should be at when the rpc is received. If teleporting use the target object transform values, and again set the position and rotation manually via the transform. Also you may need to disable the PUN Character Transform Monitor just before doing this and then enable it right after, for both local and remote.
Hope this can help for now, I think there was some other things I did for setting position and rotation(delta rotation it think was one), but if you follow your nose through UCL.SetPositionAndRotation() you basically want to do what it does, but do not transmit, use your own rpc so that the position and rotation isn't set again after its been done.