Well, it could be a vacuum leak (EGR tube), but I suspect a sensor. Either the O2 sensor, or the CTS. Another possibility is the MAP sensor. You can unplug the MAP sensor, to test, but that will throw a code you'll have to reset.
When you put the ECU in diagnostic mode, it ignores the sensor input, and runs on pre-determined values.