Давайте попробуем разобраться.
С датчика МАР на ЭБУ идут два сигнала: давление и температура во впускном коллекторе. ЭБУ, зная два этих параметра, рассчитывает вес воздуха, который попал в цилиндры. И согласно этому количеству подает нужное количество топлива, согласно заложенной программе. Датчик кислорода - это обратная связь, т.е. как-бы контроль. Если ДК выдает высокое напряжение, то для ЭБУ это значит, что смесь богатая, и нужно уменьшить время впрыска. Если напряжение ДК низкое, то смесь бедная и количество топлива нужно добавить. Если напряжение скачет от 0,2 до 0,8 то смесь нормальная.
Мне кажется, что проблема или в ДК или в МАР. Склоняюсь, что скорее всего в МАР. Он подает на ЭБУ неправильные данные, и из-за этого богатая смесь. ДК это видит, но видимо, ЭБУ по сигналу с ДК может корректировать к-во топлива в узком диапазоне, вот и не достигается стехиометрическая смесь (нужное соотношение воздух-топливо).
Я бы попробовал сначала отключить ДК и посмотреть, что будет без него. Затем отключить МАР. Двигатель должен завестись на аварийной прошивке. А там уже показания датчиков не учитываются. Станет ясно, что и как.