Does it have one?
Revs are measured from cranksensor. Since yours (US) is a multiair, valves are hydraulic with engine oil. Do you have the right spec oil?
ok i have read several posts stating same problems ie dying at stops under load like ac and excessive high idle at startup and they almost all mention idle air sensor
as it‘s multiair, it also measures the engine temperature precisely in order to calculate oil viscosity, this is needed for electrohydraulic valve timing. Changing the oil to some other non standard grade and changing viscosity will change the oil volume available per time unit for the intake valve actuators.
Other issues could be dirty and leaky injectors, a faulty lambda sensors, among others.
When the A/C is switched on the ECU will automatically raise idle RPM to compensate for the additional load.