I had a similar problem many years ago, in a package that did not use cursors.
The simple soltion was to split into smaller packages

Chris