Is Module2 in your %INC path, or have you modified %INC in Module1 in order that you can load Module2?
Apache::StatINC checks the last modified time of each module in your %INC hash at the initialisation phase. If the module isn't there or hasn't changed it wont be reloaded. If you're loading Module2 from outside your %INC in Module1 you should modify your startup.pl so that directory is included.
Let us know how you get on.