Umstrukturieren kannst du so, wie du in einer normalen Verzeichnisstruktur auch arbeiten würdest.
Im Gegensatz zu SVN gibt es nur das Repository, Branches, Tags etc werden einfach durch Unterverzeichnisse im Repository abgebildet. Dass in "/branches/my-branch" dein my-branch liegt, wird eifnach dadurch definiert, dass du weißt, dass in /branches deine Branches liegen. Durch dein Verhalten damit, arbeitest du faktisch mit branches (d.h. du commitest zeug rein und irgendwann mergest du das zurück in den /trunk, der selber auch nur wieder ein Verzeichnis ist).
Bei SVN gibst DU deinem Repository den Sinn und die Struktur, nicht das System selber. Das macht es wesentlich übersichtlicher und vor allem Flexibler, da du im Prinzip all das tun kannst, was du willst.
Für weitere Informationen (Konzepte die hinter SVN stehen etc) empfehle ich das sehr gute SVN-Book, das auch ein Kapitel für CVS-Umsteiger bereithält und die Unterschiede erklärt:
http://svnbook.red-bean.com/
Was muesste ich denn machen um für jedes Projekt was ich im SVN habe ein eigenen Unterverzeichnis unterhalb des SVN-Repositorys zu erstellen
Zuersteinmal musst du eine Arbeitskopie des Repositorys ziehen. Du kannst theorethisch auch unterverzeichnisse auschecken (zb /trunk wenn du die aktuelle Hauptentwicklung haben willst oder /tags/1.0 wenn du die 1.0 Version willst - falls es die bei dir gibt, da kann ja alles mögliche stehen, siehe oben):
Das geht mit deinem Lieblings-SVN-Client oder mit "svn" auf der Kommandozeile.
Anschließend solltest du einen Pfad ähnlich diesem hier vorfinden: "mein-repo/", in diesem sollte es dann "tags/", "trunk/" und "branches/" geben. Dort sollten die CVS-Daten migriert zu finden sein.
Wie du das ganze umbauen kannst ist im SVN-Buch beschrieben. Im Prinzip geht das aber am einfachsten über einen svn-client.
Perl macht Spass.