Take out the hit counter and the google analytics for the time being. Also take out any in code linking to third party sites like your weather etc. Then continuously try loading your page. Does it speed up on average? Do you still have the slow performance? If so, then it is something in your code. If it speeds up, it is one of the other hosts your page is contacting which is slow and slows down your page.
Tips for speeding your site...
1) Optimize your graphics and make sure they are proper dimensions (don't take a large graphic and shrink it by adjusting the height/width attributes... just shrink the image to the proper size first). Adjust the colors to make sure they still look good with as few colors as possible.
2) Try to have all code sources, images, and applications hosted on your server. You can't always get this, but the more you can put on your host, the less your page has to contact other servers to get stuff it needs.
3) When coding, always follow good coding practices like preventing too many loop iterations, closing your connections as soon as possible, and try to avoid any operations which would require a lot of reading/writing to a server's hard drive.
4) Write a little code, test, write a little more, test. Keep writing and testing so that when you do hit a slow down, you know that it probably has something to do with the code you JUST wrote.
Hope the tips come in handy.
now I would try to remove any links to 3rd party websites for the time being and see if your own code is solid. If it is, then you can add your other links back one at a time until you notice the site is slow. Then you will have your answer as to what is going on.
"At DIC we be the website performance code ninjas!"