“I have set the timeout on my tunneling connection to 600 seconds”.. WHERE and HOW did you? If you did from SQLyog connection manager it sets the SESSION 'wait_timeout' variable in MySQL for the session. But this looks rather like a webserver/PHP setting that causes the timeout. Such setting cannot be change from inside a MySQL client.
Could you check Apache (or what webserver you have) -configuration and PHP configuration?