Many otherwise proportional fonts keep their digits monospaced to avoid such issues. It is also very important for presenting tables of (usually right-justified) numbers. I've never heard of a programmatic solution to this. Just use a font with monospaced digits.
Simutrans might have to do something about the fact that the hours switch between one and two digits. If there is no such thing as a space character that is the same width as a digit, then padding with zero is the only option.