My bet is on a vacuum leak because I have seen similar issues on one of these and that was it. Also, we need to check for codes before we get to far because that will narrow this down and save a lot of time. If you can't pull codes, then most parts stores can do this for you free of charge.