We have developed a system that uses a single code base, consisting of four Visual Studio projects with an admin website, and customer facing website (each system has its own MS
If I understand the issue correctly, you have the code for four broadly similar websites in one repository. A website instance has custom features. The punchline in the original posting, the question, expresses concern about being "stuck doing a lot of copy and paste." At various points you indicate frustration with "merging" and "manual merging."
I take it you are using svn to distribute new code to the four hosts.
Perhaps your codebase is approaching a point where the common material could be profitably considered to be a library. In this view, each of the four websites is considered to be an application built from the library. If so, then it may make sense to give each of the four apps its own repo in subversion. The developmental effort will be to separate the common features from the custom features, perhaps making the API on the "library" code a little more crisply defined. Each host then checks out the library code and its own app.
Is this close to what you're thinking?