In D7, we set the site's default time zone (America/New_York for me). Since it then displays the correct time, I have to assume that the server is running on GMT. Is that correct?
No, that's not correct at all. Most servers will be set to their own local time zone AFAIK.
If I read the PHP manual correctly, the strtotime() function will create a GMT time. Is that correct?
You can always get real GMT time with gmmktime http://php.net/manual/en/function.gmmktime.php Compare that to mktime to confirm.
Fred