ok first we need to start about the rpm going up and down, shaking then finally stalling. sounds to me either a vacuum leak, which could cause a tach. to go up and down and if its a big enough leak it would cause stalling. let your car sit on idle while listening on your engine if you hear a hissing noise it is most likely a vacuum leak, pinpoint the vacuum leak(hose, throttle body gasket or Intake
gasket) and repair. 2nd it is also possible that it is your idle air control valve which controls sends a signal to your ecm when coming to idle and your ecm adjust air, fuel, timing to keep ur engine running on idle, in this case you would need some kind of a computer scanner to monitor IAC function. sorry but iac on 7th gen celis cannot be cleaned. hope this would help.