ask crystal tech what the asp.net service time out is set on their server, some put it at 10 mins other at 5 others at 30 mins. The average seems to be 20 mins, your site is pretty fast. Minus the initial loads, which is par for any asp.net site, not just DNN. I asked my host if I could get a bit more time on my asp.net service and bump it to around 45 mins, and they agreed, but I do have many accounts with them, but hey it never hurts to ask. Beyond that use a 3rd party keep-alive service that hits your page at least once every 10 mins, doing so keeps the service open and that initial load gone.
Also ask crystal tech what amount of ram your hosting account gets to attempt to consume, if its fairly large use memory as the cache option more often then not.
And lastly you really want a site to speed up, cut off a bunch of the log files DNN keeps tracking. Overall there are around 10 log files active on a standard DNN installation and most of them really provide little to no value, but keep track of everything. Shutting some of those off can really speed up a site, also note you should look at disabling users on line if you don't have it on your site, also don't include users online option for every page as each time it shows up on the page there is a call to the log files for the modules rendering. It's a wonderful thing to have but can consume its fair share of resources if your site has a bunch of users online all the time.