The Task Scheduler depends on the underlying IIS application pool process. You can extend the timeout value by changing the executionTimeout value in the web.config. By default, the timeout is 90 seconds.
<httpRuntime executionTimeout="300" ... />
Alternatively, you can try to set the DotNetNuke Scheduler Mode to run in "Timer Method" mode under your Host > Host Settings page, which will run it outside the ASP.NET user request. The default "Request method" will run it as part of the user request.
If your website doesn't get a lot of visits (less than once every 20 minutes) and if you have processes that need to run longer than 20 minutes, you should consider setting the application pool's idle timeout value to greater than the default 20 minutes. From your IIS Configuration Manager, select your application pool and click on Advanced Settings and then change the Idle Time-out (minutes) value.