Restarting of IIS sounds right.
It all kinda smells like permissions issue (90% of my problems in .NET were IIS permissions issues ).
I would compare application directory security for that application (or just the page where it blows up) on both IIS servers and see if they differ (Anonymous access is usually enabled and Windows authentication disabled).
I'd try and implement the MS 'fix' and see if you can pinpoint the error.
If you do a lot of developing it will save you a ton of time in future.
Are you spawning any threads to do background work?
Are you using any timers?