ummm, no offense but that was very difficult to read.
I think what you are saying is that you don’t want the pushback? In that case either disable collision with the pawn on everything that you don’t want to push back or enable the WalkingCollisionOverride mode which lets you do that separately from locomotion. It follows all of the normal engine collision channel rules.
As for spawn offsets, you need to wait for the initial Tracking system to be operational before spawning them offset to the start. On first clean boot the tracking system may not have valid values yet and a delay is required. I changed the template in 4.20 to account for actually.
I specifically made the VRCharacter so still be roomscale offset from root, for one because it was a severe additional complication and challenge and it has been fun to work through it, and for two, because there are many cases where is very useful, like retaining world to roomscale relative setups and correctly using chaperone bounds, as well as allowing for offset collision from the actual HMD and some other neat little tricks.
The SimpleVRCharacter on the other hand moves the character itself when the HMD moves, it is far less complicated and has its own uses for when that is the behavior that you want.