ok, so i ended up solving this… asking the pawn to sync with the camera manager on every frame is apparently too much. i mentioned that the arrow actor looked like it was always a frame behind and that was essentially correct, the camera would position itself then the pawn would update the arrow location giving that strange jump/jitter in position.
what i ended up doing was creating a function in the camera manager that would find all the pawns and iterate through them updating the arrow position relative to the camera. then call this in the Overridden “BlueprintUpdateCamera” function in the camera manager. this would set the position of all arrows On the same frame as the camera updated and so the arrows are no longer a frame behind. i really couldn’t find any decent tutorials or explanations of this so i hope this helps someone that needs it.
im going to try to change the title of this question to better describe this.