Microsoft has included a tool with the Commerce Server install called CatalogCleanup.VBS. This script will essentially delete all of the temporary tables from the Catalog Scratch database.
It is recommended that this be done weekly.
A quick look at the script results in seeing this simple SQL statement which is run against the Catalog Database.
EXEC dbo.ctlg_DropPersistentTablesInScratchDB 0
So I say, why not create a SQL Server Job that runs this weekly. Just my two pennies.