Some fonts do that for some reason–I usually switch fonts, but since you’re stuck with Arial Bold, you could try breaking out each “number set” on their own and have the colons as static text layers separate from the expression.
So you’d have the expression end with only padZero(hr) on one text layer, then padZero(min) on another text layer, etc.
The numbers might still jump around a bit, but at least the symbols don’t move.
–I’d keep the original text layer as a guide to help you manually place the numbers and colons correctly then parent them to a null so you can move them together or precomp them.
Dan Fredley