Do you know if this is a common issue? Where memory is holding onto the variable contents? If so, do you have to use strict, and declare the variables as local variables? The application is fairly complex, in that it access a db, and brings in multiple arrays of info.
This is the largest app I have written in perl, and have never been concerned with memory usage until now, but 22 MB for one httpd process seems a wee bit high to me.