Huh, that's a little weird that it overheats in stop and go traffic, but cools off on the expressway. That would generally indicate fans aren't kicking on properly, or a lack of air flow from the fans, but as these fans aren't clutch driven, that shouldn't be the problem. Though, belt driven fans generally don't cool as well, these engines get hot as it is, so it could just be the climate you are in. I know a lot of people do some type of coolant line bypass down where the climate is a lot warmer. But I am from Michigan so I do not experience extreme temperatures that often. But like racks said above, i'd probably look into a new radiator, as you haven't mentioned changing that, and over time, the radiators ability to dissipate the heat deteriorates from corrosion and what not occurring inside.
Once last thing I'd suggest would be to bleed the air from the cooling system if the mechanic didn't already, that could also cause some issues but... not much else I could think of really.