Seperate modules definitely sounds very sensible. It would be more flexible, more concise from an operational point of view and more reusable.
This would of course mean a substantial re-write with much of the code having to be re-engineered to 'modularise' it, support the interactions between the modules, eliminate deprecated functions (of which there are many), support the new acs templating model and accommodate new SQL for the new data model.
A very big project but I am sure worthwhile.
Regards
Richard