Well the issues that is outlined is EXACTLY what we have since Exchange was upgraded the SP1 and we have to upgrade BES to 5.0.2. We are running everything on a Virtual Evironment with 2 Exchange Servers in different localities and i BES server in first locality.
After 5 days of pain we set up 6 static agents for one of the localities to see how many users is best per agent. This is still going on but for those users one of these agents have stopped complaining.
The issue all centres around hung threads that BES doesnt / cant (answer depends on if you are talking to MS or RIM!) get the answer from Exchange Datastore.
So Static Agents help but isnt the best solution!