After working with EllisLab support on this issue, it turned out to be a rogue config item in the database for "server_offset" config item. It was set to -1140 for some reason.
They were kind enough to decode, unserialize, modify, re-serialize, and re-encode the variable for us and that fixed the problem.
Here's the response regarding the resolution from EE support:
I’ve traced it down to an orphaned server_offset setting that is in your site preferences in the database of -1140. In 2.6.0 the UI for that setting was removed, but the config is still observed as there are rare situations where it’s necessary (server OS time permanently incorrect for instance). It became somewhat of a setting in the ether though without the UI, and without being in the config file. We’ve fixed this in 2.8.0, and it will extract the value from the db if it exists and place it in the config file. For some reason, it would seem that this installation had a server offset setting of -1140 prior to being updated?
In case you are not able to update soon, I’ve just overridden that value in the config.php file with:
$config[‘server_offset’] = ‘0’;
And the times look correct now. After you run the 2.8.0 update down the road, though, it will extract that db value and overwrite that with -1140. At that point you can simply remove that setting entirely from your config file after the update. Make sense?