I created a j2me program and ported it to the blackberry bold.
The program does some http queries. Every now and then these fail with the exception: 'tunnel failed'
My APN settings are correct (since sometimes it does work).
I connect with ';deviceside=true' appended to the url
I notice that when the browser has just been active, the program always works. However when the browser hasn't been active for some minutes and I start the program, I get the tunnel failed errors.
As a test, you might want to try adding the APN settings on the URL itself to see if that helps. I assume you have good signal strength?