I would start by looking at the oil filler cap, make sure it's tight and clicks. Also check the PCV hoses from the valve cover to the engine. You may have a malfunctioning IAC (Idle AIr Control) valve. It is mounted th the throttle body on the intake. It meters air into the engine whenever your foot is off the gas pedal to allow air to enter the engine. It make check out ok, but that is when it doesn't stall. It will not always set a code either for the check engine light. You can try removing it and cleaning it out and also cleaning out the throttle body of the soot and gunk. Below is a picture of where the IAC is located.
Cleaning it out is a cheap and easy fix you can do yourself. If it fixed the problem, replace the IAC with a factory IAC.