Well, if the CEL is on its going to be giving you a code.. why hasnt this code been checked, and why have you let your clearly underqualified "mechanic" waste money on parts that dont normally fail.
You probably have bad injectors. I dont mean to come off sounding coarse or anything, but im just trying to be realistic. Welcome to NICO and the best Q45 forum around. We are here to help you.
first order of business is to check the ECU codes. This is something that you could probably do yourself if you have a few simple tools. You will then know what is going wrong and the appropriate course of action for treatment.
Spend some time reading on
http://www.q45.org and see what you can come up with. Consider ohm-testing your injectors to find bad ones.