If it does it only when the a/c is on then it may be the fan isn't kicking on or your radiator may be going bad. You'll need to check your underhood fuse panel and see if the relay is bad or a fuse is blown. Also when it's hot shut the engine off and disconnect the fans so they won't start and put your h and on t he radiator in different places. If it is cold anywhere, then the radiator is bad. It should be or feel the same everywhere. Temp wise.