I believe this issue has to do with installing a ROM over another one without wiping. My particular ROM is Apex 9.3. According to the associated XDA forum thread, freezing problems with this ROM have been solved by "a complete wipe including formatting sdcard, system, cache and data when flashing 9.0".
I have done so, wiping the data and cache in recovery mode, reinstalled the ROM, and I have gone a week without a severe lockup (severe meaning I have to restart the phone to get out of it). I've had an occasional 5 second freeze or so, but that's it.
Update: Still had issues with freeze-ups. Turned out it was the ROM. Went to a new ROM and have not experienced freezes.