Fuel is definitely something worth considering. Not everybody has the tools to do this, but I'd suggest running a pressure and volume test on your fuel from the schrader valve on the fuel rail. If you don't have them, they're not expensive to buy. The little fitting should only be a few bucks. The gauge is a little more. This is usually the best and most accurate way to determine if you're getting fuel. I also agree with the fuel filter replacement idea. Even if you're getting the right amount of fuel, they need to be replaced regularly just like everything else.
As far as sensors go, it's not always about check engine lights. First off, a scan tool is only telling you what the computer thinks it's seeing, not what the sensor is actually displaying. A short or a faulty PCM can throw you off big time. It's rare, but it happens. Digital oscilloscopes aren't cheap by any means, but if you can get your hands on one, they're the best way to test a sensor. Also, just remember that a check engine light only comes on because specific enabling criteria is met. I once had to replace a TPS sensor on a similar drivability problem. The PCM showed no codes, but the sensor was only operating between 0 and 1 volt. Since TPS sensors (most of them, at least) work on a 0-5v scale, no codes were registered for being out of limits, so nothing came up.
But anyway, now that I've written a book for you, I'll get to the point. Establish that you have fuel, then spark. What year is your Mark? Do you have wires or coil-on-plug? When was the last time you did an ignition tune-up? If you have good fuel and spark, then start looking at sensors. If you have a scan tool and a friend, take the car out for a drive and monitor the data. Pay special attention to your MAF. Remember that MAF/MAP sensors are given top priority for fuel delivery... And you said that this problem happens when you accelerate hard? Your MAF SHOULD reach it's limit (or close to it) when you're holding the pedal WOT. If it's not (let's say it's a similar problem to that TPS I encountered earlier, for example), then your computer may think that your engine isn't under heavy load when it actually is, so it's being starved.
Just a thought, though. Let us know what happens and good luck.