Here's what I'd try -- it made a HUGE difference for my wife's car, and it's cheap and easy.
1. Remove the gas cap and put it back on tightly, just in case.
2. Disconnect the negative terminal of the battery and remove the fuse that's labeled EFI. It's small and wedged between two larger fuses, but you can wiggle it out. This will reset the codes while you do the following:
3. On top of the air filter housing (slightly to the back) is a sensor. It's held onto the housing by two small screws and a wiring harness that's easily removed (squeeze and pull gently).
Remove it. On the outside you'll see a small wire with what looks like a drop of oil on it. More importantly, if you look down into the thing you'll see two tiny wires deep down, across one of the openings. They're each about 1/4 inch long; a flashlight helps.
You need to clean these wires. I used some choke cleaner I had, but any kind of alcohol-based component cleaner will do the trick. I sprayed it generously into the sensor, then I GENTLY used a Q-top to wipe those two wires, and another to clean out the inside of the sensor as well as that oil-drop thing.
Let it dry for 15 or 20 minutes, then reinstall it.
4. Replace the fuse and reconnect the battery. (Reset your clock and your radio stations.
My wife said that cleaning that sensor was "night and day" with her car -- no more check-engine light, no more hesitation.
But I stress that she had a different code, and this might not help. Still, the difference was so striking that it can't hurt. It'll take about 30 minutes, tops.
Good luck!