Maybe I missed this but where is it explained that 20 concurrent users are not using the same fe? Might be something that you would never do but it's not obvious here.
Very difficult to find such a problem cause when the testing and production environments are not the same. I think the best you can do is break on all pc's, otherwise it's hit and miss and failure is likely to occur on the ones you don't pick. You might even find that different operations are at play by doing so. Unless you can set up a test before crunch time I'd say don't limit your ability to uncover the problem. Users would understand you're trying to solve a problem if you tell them up front that there are going to be interruptions.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.