I think a simple solution is cascade control. Read about cascade control at www.jashaw.com.
The secondary loop would have a temperature controller using a temperature element directly in the exhaust of the furnace. This may have a setpoint of, say 115 deg F.
The master loop would be the room temperature controller, set at, say 68 deg F. This controller would send the setpoint to the secondary loop.
So, if the outside air temperature changes, the secondary loop would see this affect quicker and adjust the radiator valve as necessary to maintain the master loop setpoint.