I don't know if it is the only way to fix it, I know Chrysler put a cover on the heater box on 2002+ models. I have read that a scoop helps a lot. You can get that cover for 50$ on ebay. If you search "water on passenger side floor " on google or any jeep related forum you will get a lot of solutions.
i only get water on the driver's side (95 YJ) - there used to be a lot, but i fixed the seal between the cowl cover (i think that's the name, the sheetmetal where the cowl vent goes) and the windshield lover (EDIT: please read LOWER and not lover
) frame (not the frame around the windshield, the body part under that) using some urethane sealer (similar to the winshield urethane but a little more flexible) - i had to dig out the old sealer that cracked, did it on about 1/2 the length from the vent all the way down to the fender - it was pouring thru there. Now i get drops, not much like 1/3 of a coffee cup when it rains overnight - it's not from there where i sealed it, i can't figure out where it's coming from - i also put silicone on the weather strip under the windshield frame but still get it. my drains are clean and they flow well) i put the hose in there. If anyone knows where this can come from i'd appreciate a couple of pointers (drives me nuts, like i said, not much but it sucks).