I ran into a similar problem before importing thousands of files from an archive. I ended up setting up the package to only run for a few hours at a time and scheduling the package to run every 5 minutes if it wasn't already running.
Each time the package stopped, the memory it was using was released.
For best practices on asking questions, please read the following article: Forum Etiquette: How to post data/code on a forum to get the best help[/url]