Using globals will not slow down your program. In fact, you were using globabls before, but they were in the "main::" package because you didn't put them anywhere else. Something else is causing your slowdown.
You might be better off using one of the dbm files, like DB_File or GDBM_File, than Tie::Persistent. The trouble with SDBM_File is that it has very small size limitations.
It also sounds like you are creating libraries that have no package declaration and just pulling all of their functions into your main program. If that's what you're doing, I would advise you to put them in a separate package instead, to avoid confusion and namespace collisions.