WordPress is a blog script and not a CMS, so trying to use it as a CMS will result in issues like this, especially if you are using one instance of WordPress to run multiple sites.
The biggest problem with using WordPress without any kind of caching is that every single hit you receive is a fresh call to the database to get your content, even if that content hasn't changed for years. Any CMS on the market for the past decade will cache static content so that it is accessed fast and without having to hit the database.
In the short term, I would recommend the WP Super Cache plugin and installing YSlow onto Firefox (with Firebug installed) so that you can go through any needed client-side optimisations, but the biggest issue with WordPress is always speed, whether it be with caching or just the general sluggishness of the script when it is hacked to use as a CMS. A long term solution would be to look at a proper CMS, ideally one you can use on top of an existing PHP framework.