Well, how about you adjust the linkage?
Pull the 4x4 shift bezel. Pull the shifter into 4lo. Place a 3mm (1/8") "shim" (drill bit) between the shifter and the rear shift gate. Use a bungee cord to hold the shift lever firmly against the shim and shift gate.
Crawl under your XJ. On the upper shift rod there is a squarish block with a locking bolt in it--the adjusting trunnion. Loosen the bolt, use a pry bar or large channel locks to make sure that the transfer case is fully into 4lo, then tighten the locking bolt in the trunnion, remove the bungee cord and shim, re-install the bezel, you are done.
Now--do you have a transfer case drop installed? If you do post back for more info.