Just glancing at what you said real quick if say check your timing. I used to have an eclipse that was acting a lot like that and it turned out my timing belt jumped a few teeth but didn't throw a code. going off what your saying I'd bet that's probably not it but it's worth checking the timing...