I see, there are really a lot of information loaded during the query.
When I run vmware-stats script on the ESX it takes some ms to get the output, it's fast as it should be.
From remote, when I try a snmpwalk to the x.1000 tree it takes about 90 seconds, I got back 3 values (lines) per second.
The snmpwalk to the x.6876 tree takes much longer, of course more data. But the speed is the same and no timeout problems.
I'm monitoring a ESX 2.5x Server in the same location too. It's not better with the performance. I suppose the Network link is not fast enough or probably the respons time is bad, on a ping the response time is on average 400 ms.
From my point of view there is no chance to have it better as long the Network link is not faster.
Maybe in the future you're going to change the scripts to query only e.g. the CPU data or a passive check on the ESX (cron job or daemon) and transmitting the result to Nagios.
Thanks for you help!