Crash Course. Your car is a 99 so you should have an OBD II connection. Plug into it with a scanner that will show you the data stream from your vehicles sensors (this is what the pcm is seeing) Since it's an idle issue you'll want to do this when the car is cold and having the issue. Your ambient air temp sensor needs to be correct, your maf needs to be correct, you ect needs to be correct. You'll have various load and baro sensors, MUST be correct. If ANY of them aren't you need to find out why (bad sensor, bad wire/connection). O2 dosen't mean a thing until the car is up to operating temp and the vehicle enters "closed loop" operation, chances are the O2 is good if the problem somewhat clears up when the car is warm as the pcm will start adjusting fuel trims. You may have a bad fuel regulator, pump, or injector. You can check injectors by using a mechanics stethoscope and listing for the injector action, if one doesn't click its stuck open most likely. Otherwise do a fuel pressure and volume test (basing this on the codes you're describing). Also from what you're describing once you do nail it down, replace your plugs as there most certainly fouled by now.