Dein Kunde handelt sehr umsichtig und hat eine berechtigte Forderung, im Extremfall von Dir unabhängig zu sein: Es ist üblich (und
imho zwingend), Quellcode zusammen mit dem Werk auszuliefern. Der Kunde muss in der Lage sein, das Werk auch Dich, den Ersteller weiter zu verwenden. Normalerweise würde Der Quellcode bei einem Notar (oder escrow) hinterlegt und im Falle von Streitigkeiten (Du nutzt dein Exklusivwissen und forderst überhöhte Preise, gehst Pleite, stirbst, gewinnst im Lotto etc.) herausgegeben. Dein Kunde wäre total am Arm, wenn Du nicht mehr zur Verfügung stündest. Um hier Kosten zu sparen, kann man das Zeugs aber auch dem Kunden in die Hand drücken.
Da im Quellcode normalerweise das Kundenwissen verankert ist, hat er auch ein Recht auf die Exklusivität des Quelltextes. D.h. Du bist zwar Urheber, aber Eigentümer des Quelltextes ist der Kunde, denn Du hast das Werk in seinem Auftrag erstellt. Maßgeblich ist hier, dass das Programm wirklich eine Exklusivarbeit ist (Ein angepasstes Standardprodukt ist kein Werk). Wäre denkbar, das ihr etwas anderes vereinbart habt, aber da dies zum Schaden des Kunden wäre, wäre dies anfechtbar.
Was Du nicht darfst: Code in deine Bibliothek übernehmen, wenn dieser im Rahmen des Auftrages erstellt wurde oder Kundenwissen beinhaltet (Formeln, Prozesse o.ä.). Weiterhin darfst Du Code nicht zurückhalten, denn es ist nun mal nicht deiner.
Was Du darfst: Dein Eigentum behalten, also deine Toolsammlung, die es (nachweislich!) schon vorher gab. Das ist deins. Du kannst diesen Quellcode zusammen mit dem Werk ausliefern, und sofern die einschlägigen Copyrightvermerke im Code hinterlegt sind, ist damit alles gesagt.
Eure Geschäftsbeziehung basiert auf Vertrauen, denn der Kunde vertraut Dir, das Du das Kundenwissen nicht an die Konkurrenz verkaufst und Du vertraust dem Kunden, das er deinen Quelltext nicht unter der Hand weitervertickt. Beides ist durch entsprechende Vertragsklauseln zu vereinbaren.
Um es auf den Punkt zu bringen: Dein Kunde muss in der Lage sein, das Produkt/Werk ohne dich weiterzuentwickeln. Wie er das schafft, ist zu klären. Er bekommt ja schließlich die
VCL-Quelltexte auch nicht von Dir. Eigentlich ist das eine sehr einfache Geschichte. Man muss sich nur einigen. Und das geht nur dann, wenn man sein Gegenüber versteht.