Tanya,
I was skeptical so I gave this a try.
Predictably this proposed solution had no impact on the issue I am experiencing.
If the .Find method times out during CPU intensive application processing extended properties are no longer available. I am still unable to work around this without setting the Auto-wait timeout to a value greater than the applications process time. From your code the "mainForm" in this scenario does exist, but is currently "Unresponsive" while processing....during that "Unresponsive" state I am performing a .Find on the form...
(mainForm.Find(prop,propVal,depth) )...the Find method appears to be waiting up until the auto-wait timeout and then causes the .Net plugin support to crash or become unavailable.