I wasn't sure how this would behave during multiplayer, so please forgive me if it hurts your fun. After the talk interval hits, an area scan is performed looking for nearby trains. This is only done around 'player 1'; but I just thought of a way to make that better (or worse, depending on the cause).
I wonder if the lookup is expensive enough to cause your desync. There might be an alternative. Thanks for the report.