I've had the same issue with my 2K Jeep XJ and my old '94 Jeep XJ especially idling at fast food drive thrus etc. in hot weather. Replaced the radiator, water pump, thermostat etc. and same 'ol same 'ol.
Keeping the efan on was the solution in my case.
I've also had heat soak misfiring issues when parking for 10 to 15 minutes while going into a convenience store.
I solved all of those issues once and for all by installing a time delay relay with an on switch to keep the efan running for 5 minutes after engine shutdown or any time i see the temp rising.
Problems solved.
Could even install a simpler manual efan relay with a turn on/off switch to keep the efan running until its turned off by the switch.
What i would suggest is to first flush the cooling system, clean any bugs and grit out of the radiator, change the radiator cap, thermostat. And don't discount a bad clutch fan or water pump.
There could also be a TSB for your year Jeep, check it out.