I figured it out.
Somehow, one of my users managed to login to our server with a different URL which has a different file path. That isn't supposed to happen, as the other URL is supposed to redirect to the main one.
And when a different URL with a different file path is calling the same script calling a subroutine from an unnamed module, then mod_perl barfs.
http://modperlbook.org/html/22-3-8-Undefined-subroutine-amp-Apache-ROOT-perl-test_2.html
Sometimes a post like this is all that's needed.