I'm not sure if this is related, but part of the problem may be around the build process and the files that get created to convert an XPage to what actually runs on the server.
I'll preface this by saying this is my understanding from development of Java in XPages and plugins for Notes, not based on any authorised documentation from IBM (I'm not sure if there is any).
In the Designer Client there's the XPage and, in Package Explorer, under Local - xsp you can see a Java class for each XPage or Custom Control. So it's not the XPage that gets run from the server, but it's not even the Java class. During the build process the Java classes get compiled by Designer into Java bytecode. (Effectively it's Eclipse not Designer, because the nsf is an Eclipse plugin, with it's own plugin.xml, doing the same with the Java classes that a plugin would do.) I think this may be the cause of the problem.
What I saw with XPages Help Application was, when I did a design refresh, my custom Java classes that I put in WebContent/src were updated and looked right, but the old code was run. Even a clean of the project in 8.5.2 had no effect. I had to delete my classes from the target database, refresh the design, then clean the project. With 8.5.3 I think the design refresh issue is resolved.
I'm not sure when you build whether it rebuilds everything, or just everything that that developer has touched. But the process may push up byte code for the whole project. Or it may be that developer B's Designer project has not been updated with developer A's changes. But it makes sense that cleaning the project or recompiling that page resolves the problem.
Do the developers have Build Automatically ticked on the Project menu? If so, it may be worth turning that off, so the project is not rebuilt every time they save a design element. It takes a bit of getting used to, but it's now the default setting for my PC.