причина явно в сглаживании текста. Если её отключить всё ровненько, а если поиграться свойствами
antiAliasType и
gridFitType то результаты тоже не предсказуемые.
+
при большом тексте вроде тоже ничего страшного... вообще широты равно

Код AS1/AS2:
tf1.autoSize=tf2.autoSize=true
tf1.embedFonts=tf2.embedFonts=true
tf1.text=tf2.text="AB + CD = EF, AB + CD = EF, AB + CD = EF, AB + CD = EF, AB + CD = EF, "
var TF=new TextFormat()
TF.color = 0xFF0000
for(var i = 0; i<tf1.text.length; i= i+2){
tf2.setTextFormat (i, i+1, TF)
}
trace (tf1._width+" "+tf2._width)