Everyone will say gears. Yes, and...
There are things you can do despite many people saying Jeep squeezed every last drop of performance out of the 4.0L, but the throttle body isn't one of them until you do some of the much bigger changes.
I've had luck with a combination of 4.56 gears with 285/75R16 tires, 1.7 roller rockers, some tuning with HPTuners to increase spark advance at wide open throttle, 2.5" exhaust (went back to a 2.25 Walker SS muffler for sound though), and shorty headers which help with good torque and power in the 2000-3500 rpm range but seem to only net +5 peak hp up around 4500 rpm. And it pains me to say it, a cold air intake because
@Jezza keeps showing they work with the 4.0 to gain about 10hp. Maybe 20hp peak all together, but its now much better in the mid-range.
I didn't really plan all this for power initially, so didn't do any before dyno runs but plan to do a few pulls as is soon. On real roads though my benchmark was being able to hold the 50mph speed limit at the highest point on I-70 in 4th gear. I could not with the current tires and stock 4.10s. I blew past that goal holding 65mph though there now.
The thread mentioned above is about the bolt on stuff. There is another level of madness which fits into 4 groups. Head and cam, stroker using the 4.2L crank or a variant of it with even longer stroke for 4.6-5.0L, superchanging or turbocharging. I'm planning out the stroker+ head and cam route as I want more power below 4000rpm to pass on our 2-lane mountain highways while maintaining good low rpm manners offroad.