[Verizon Samsung Galaxy S III] Bort76:
I may go there eventually, but I'm not quite ready for lollipop just yet. Thanks for the other suggestions, I may try some of your settings. Reflashing firmware and modem (already had the most recent) was one of the things I did over the weekend, but no luck there. The most recent thing I tried was writing a continuous logcat and seeing what comes out when it freezes. The logcat is below, but I didn't see anything unusual (except for the garbage at the end). It was a longshot that it would capture the problem anyway.

05-26 06:35:03.615 E/Sensors ( 600): accelHandler 0.337698 10.133327 0.461041
05-26 06:35:07.365 E/Sensors ( 600): accelHandler 0.302970 9.671089 1.179547
05-26 06:35:10.523 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:35:10.523 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:35:10.531 E/Sensors ( 600): set fifo rate - divider : 3, delay : 20 ms (50.00 Hz)
05-26 06:35:10.539 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:35:10.748 E/Sensors ( 600): accelHandler 0.362845 9.970467 0.555645
05-26 06:35:11.181 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:35:11.181 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:35:11.181 E/Sensors ( 600): set fifo rate - divider : 13, delay : 66 ms (15.00 Hz)
05-26 06:35:11.189 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:35:13.672 E/Sensors ( 600): accelHandler 0.352068 10.020761 0.461041
05-26 06:35:17.463 E/Sensors ( 600): accelHandler 0.280217 9.843531 1.064586
05-26 06:35:21.246 E/Sensors ( 600): accelHandler 0.325723 9.889035 0.882565
05-26 06:35:24.995 E/Sensors ( 600): accelHandler 0.397573 9.960886 1.100511
05-26 06:35:28.753 E/Sensors ( 600): accelHandler 0.343685 9.874665 0.696951
05-26 06:35:32.544 E/Sensors ( 600): accelHandler -0.035925 9.918973 -1.003513
05-26 06:35:36.302 E/Sensors ( 600): accelHandler -0.021555 8.707093 -2.212998
05-26 06:35:40.076 E/Sensors ( 600): accelHandler 0.138911 11.250605 0.108973
05-26 06:35:41.260 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:35:41.260 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:35:41.260 E/Sensors ( 600): set fifo rate - divider : 3, delay : 20 ms (50.00 Hz)
05-26 06:35:41.268 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:35:41.876 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:35:41.876 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:35:41.876 E/Sensors ( 600): set fifo rate - divider : 13, delay : 66 ms (15.00 Hz)
05-26 06:35:41.884 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:35:42.784 E/Sensors ( 600): accelHandler 0.561632 8.951385 0.801134
05-26 06:35:46.542 E/Sensors ( 600): accelHandler -0.207169 10.459050 0.641865
05-26 06:35:50.308 E/Sensors ( 600): accelHandler 0.252675 8.898695 1.040636
05-26 06:35:54.083 E/Sensors ( 600): accelHandler 0.025148 9.393267 1.781895
05-26 06:35:57.840 E/Sensors ( 600): accelHandler 0.986748 9.393267 0.874182
05-26 06:36:01.623 E/Sensors ( 600): accelHandler 1.828597 9.926159 3.250041
05-26 06:36:05.389 E/Sensors ( 600): accelHandler 1.507665 9.073531 2.697989
05-26 06:36:09.164 E/Sensors ( 600): accelHandler 1.068179 10.201586 1.664539
05-26 06:36:10.047 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:36:10.047 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:36:10.055 E/Sensors ( 600): set fifo rate - divider : 3, delay : 20 ms (50.00 Hz)
05-26 06:36:10.063 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:36:10.680 E/Sensors ( 600): activatePendingSensors : mEnabled = 10
05-26 06:36:10.680 E/Sensors ( 600): requested_sensors(70) from kernel
05-26 06:36:10.680 E/Sensors ( 600): set fifo rate - divider : 13, delay : 66 ms (15.00 Hz)
05-26 06:36:10.697 W/MPL-9_sup( 600): 9 axis sensor fusion not available - No compass detected.
05-26 06:36:11.822 E/Sensors ( 600): accelHandler 0.899330 9.617201 1.707649
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff3G2 <=== status = 3
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 5
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 1
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 1
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 1
05-26 06:36:12.038 E/MM_OSAL ( 192): ValidateAACFile failed
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 1
05-26 06:36:12.038 W/QComExtractorFactory( 192): Didn't match the sniff <=== status = 1
05-26 06:36:12.038 E/AwesomePlayer( 192): LPAPlayer::Clip duration setting of less than 30sec not supported, defaulting to 60sec
05-26 06:36:12.046 W/AwesomePlayer( 192): Trying to create tunnel player mIsTunnelAudio 0, LPAPlayer::mObjectsAlive 0, TunnelPlayer::mTunnelObjectsAlive = 1, (mAudioPlayer == NULL) 1
05-26 06:36:12.046 E/AwesomePlayer( 192): LPAPlayer::Clip duration setting of less than 30sec not supported, defaulting to 60sec
05-26 06:36:12.046 W/AudioSink( 192): Event underrun
05-26 06:36:12.046 E/AudioPlayer( 192): This indicates the event underrun case for LPA/Tunnel
05-26 06:36:12.088 E/MediaPlayer( 6729): Should have subtitle controller already set
ºii·uŸ?ên5ûžÕ6(¹#1ýÙÑÇº¢…:š9Ù2Ãú½“[ƒƒRöÆ%ß]¿¸4,ô>èìÝ5ÙŽä»lñ]!Wø¥WëuL˜`ý>¶Ì{TÛWÄá6,:2|µœe¹´§3ÛºvÅ1))veTù<°bä÷Vëý~Ézä‰

I'm still banging on it, but I'm not super confident. I don't think this is a kernel problem, so I'm not going to keep dumping my problems on this thread. Thanks for the help!