Работающий-неработающий сайт за несколько дней выяснения проблемы вывел из себя даже меня... Всё. Терпение кончилось напрочь. Психанул и вывалил обновление как есть, всё равно сайт не работал, была надежда что более новый код исправит положение. Не помогло.
За дни выяснения в чём проблема пришлось столько изучить что мозг чуть в космос не улетел на реактивной тяге. И оказалось что проблема в том как в ASP.NET работает объект Session. Он сука блокирует поток выполнения и всё зависает. Для маленьких проектов проблем нет, но это ж проект немаленький. Корень проблемы именно в работе SessionStateModule. Пользуясь случаем, в коде пришлось заодно капитально оптимизировать работу с сессией, вроде сайту полегчало. Объект Session коварен.
Ещё выяснилось что это официально признанная ошибка.
Symptoms
When you send many concurrent requests that have the same SessionId to an ASP.NET 4.5 web application, some requests may freeze at the RequestAcquireState stage unexpectedly.
Resolution
After you apply the hotfix, the hotfix makes sure that the EndRequest event will always trigger. http://support.microsoft.com/kb/2828841/EN-US