I’m aware that tomorrow the public IP address of one of our production servers is going to be changed.
The TTL on that A record is currently set to 3 hours.
Will adjusting the TTL on that A record to something lower like 1 minute actually work (the domain registrar does allow specifying minutes!), so that users DNS will only be pointing to the old server for a maximum of 1 minute after we switch that A record to the new public IP address?
Only if you make that change to the TTL more than three hours in advance of the IP address change.
Remember that the TTL tells other DNS servers how long to cache records. So you must reduce it at least that long in advance of your desired change.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.