With an open coolant (engine) temperature sensor, the engine would run rich all the time. You did not mention this sensor in your tests. A flat out failure should throw a P1115 code but some intermediate failure condition can avoid the code.
http://www.geocities.com/lmp4203/kia...empsenders.jpg
www.geocities.com/lmp4203/kiasport/sensors.jpg
THe sensor is a thermistor and at very low temp it has a very high resistance. AN open circuit (corrosion at connector, broken wire) mimicks very cold temp...which translates in apparent higher air density, which asks for more fuel...and since real temperature is high, this causes too rich a mixture.
One easy test is to SHORT the wires that terminate to the sensor: there is no risk but it might be more appropriate to terminate with a 47 ohms resistor that would send an near 100°C equivalent. (shorting could throw a P1115 code). THis mimicks a high temperature and starting the engine could be difficult (too lean for starting)...in which case connect the resistor or short the wires only after it is started. THIs test would lean the mixture and clear out the rich burn smell, ( if it was the primary cause.THis issue at least must be cleared for sure before looking for something else.)
Once engine is warmed up, measure the actual sensor resistance with an ohmmeter: should be around 50 ohms. If resistance is very high, the sensor itself it open. At normal air temperature (engine cold) in Malaysia...I guess temps are around 20-30°C, sensor resistance should read around 2000-3000 ohms. Also check resistance to ground on the green/yellow sensor wire: that should be a solid ground - near 0 ohms.
Notice that there are 2 sensors: one for the gauge, and one for the computer. So gauge can read OK even if the computer temp sensor is awry.