It appears that MSI has problems performing string comparisons on ComboBox text of different lengths. So, a work-around is to alter the text to have the same lengths. By padding the ends of each text field, the desired appearance is maintained:
<Control Id="BadComboBox1" Type="ComboBox" X="100" Y="186" Width="100" Height="16" ComboList="yes" Sorted="yes" Property="BADCMBVAL1">
<ComboBox Property="BADCMBVAL1">
<ListItem Value="1" Text="TEXT 10000"/>
<ListItem Value="2" Text="TEXT 5000 "/>
<ListItem Value="3" Text="TEXT 2000 "/>
<ListItem Value="4" Text="TEXT 1000 "/>
<ListItem Value="5" Text="TEXT 500 "/>
<ListItem Value="6" Text="TEXT 100 "/>
</ComboBox>
</Control>