It is something of a longshot, but how old are your O2 sensors? Can you try swapping them around and see if the p0305 code changes to another cylinder? The 030x code indicates a misfire, and the last digit indicates the cylinder. If you already know that, then sorry for the explanation.
The fuel pump suggestion is not as crazy as it sounds. I found some other mentions of p030X codes and fuel pump issues. Strangely enough, the ones mentioned were p0305 and p0306. Maybe you can check the fuel pressure. Maybe recheck all of the vacuum lines, and see if anything has come loose.
I was helping another member with the same issue several months ago. He never posted a solution, and seems to have dropped off. I just sent him a PM, to see if he ever found a cause.
Edit - It almost seems like there is a fault somewhere in the wiring that triggers the coil or the injector. I don't know if that would throw other codes or not. That is just a guess on my part though.
Last edited by MJLavelle; 05-16-2012 at 01:26 AM.