1998 Jeep Cherokee rpms shoot up and down

Recently, if I am driving around 40-45 MPH, my RPMs will shoot up and down until I leave that speed zone. I also had an experience around the time that this started, where I was stopped at an intersection waiting for my opportunity to pull into the road. I was still in drive, with my foot on the brake. As I waited, my car began to rumble and shake (which is not unusual while I am stopped - I usually toss it in neutral to decrease the rumble but I did not because it was almost time to pull out) and then the RPMs started to shoot up and down then my car tried to launch itself into traffic. I had to press the brakes down with both feet to keep from going into the road. Any thoughts?

Bad idle air control valve, maybe.