Sorry, Michal, I misread. To decrease the number of scheduled threads you need to limit the number of calls to ad_schedule_proc -thread t. You could also call the same proc without -thread t so the scheduled procs are run in the main thread instead of their own thread.
If you grep the code for ad_scheduled_proc (or ns_schedule_proc) you can remove the calls. You will of course, lose this functionality.
A default OpenACS install should not be consuming loads of memory with procs running in scheduled threads.
Also, check out the monitoring package for a list of scheduled procs that are running.