You could have a vacuum leak or your Idle Air Control Valve is Bad. The IACV is what controls idle under engine load changes and acts as a choke when engine is cold. However your RPMs are very high and seem to indicate either something keeping the intake butterfly from closing like the cable is binding or the butterfly valve is stuck due to sludge or carbon deosits. The vacuum leak you would be looking for would be pretty large as well.
However there are enough possiblities that I think you should use this diagnsotic walk through to figure out the problem. When it talks about pulling codes, testing electrical components or needing special test kits, Advance auto or Auto Zone will pull codes and test components for free and they loan out tools for testing .
Just use the link below to get to the diagnostic;
https://www.2carpros.com/articles/engine-idles-too-high
Friday, October 12th, 2012 AT 9:42 PM