Das ist altbekannt.
Der Close wirkt nicht auf implizit per RCVF geöffnete Dateien sondern nur auf explizit geöffnete Dateien (das Kommando dazu finde ich gerade nicht).
Um das zu machen was du brauchst benötigst du 2 CL's.
CLA ruft CLB auf. CLB schließt die Datei beim Return automatisch und CLA kann dann aufräumen.

Ich habe mir da schon mal mit TFRCTL geholfen (Transfer Control ist ein Call auf derselben Aufrufebene ohne Return).
Per Parameter kann ich die Aufrufart prüfen.
Per Default wird RCVF durchgeführt, beim TFRCTL mit anderem Parameter kann ich den RCVF überspringen und aufräumen.