I have had similar problems and they were always because of the map I was traveling to, it stays in limbo, the client you must connect to does the action and it seems that he has hosted his own game in parallel.
Normally this error is given by the map in which the host is, you can try to create an empty level and host the game in that empty level, with a plane on the ground so that they do not fall?
I guess that problem happend because of client trying to browse and travel to first map as default when joining other session.
But if you use BP you can’t control the travel URL when joining.
Even i used delegate code for controlling travel but, BP join session already does that so it overlaps with your delegate code.
So, for detailed options and flexible handle, i had to make Session functions (create,find,join) with C++ code.
Can I get your code? I’m having the same problem using c++, I’m joining but I go to the start menu instead of the map the server is on. Can I see your FURL NewURL function? Or whatever you have in your HandleJoinSessionComplete?