If you install an XJ front axle shaft in your YJ, I dont think that you will see a significant drop in MPG's. But i'm pretty sure you will feel a new vibration. Specially at higher speeds, since the front driveshaft on YJ's aren't balanced from the factory.
I installed a posi-lok on my front axle, and i love it. it lets you know that your front end is definately locked in. The kit for one is kinda pricey anymore, usually around 200. So a lot of YJers are making their own, from a hand throttle cable or similar. But the posi-lok wont let you down and its there when you need it, unlike the vacuum lines that are forever giving problems.
I did the one piece axle shaft swap. I did it for the bigger u joints and to not have to worry about pulling a cable or the two piece shaft and collar. I did have to replace oil seals but I figured it was time. I've never had any vibrations from my front drive shaft, never had it balanced either.
I did the cable and it has worked great for me. The reason I chose this instead of solid axle is because some of the trails I take are in the mountains and I wear my brakes pretty good coming down. With the cable I am able to leave the front axle disengaged and use 4 low. This allows for better steering. The one thing I don't like about my install is I'm 6'2" and the handle under the dash hits my knee. I have seen people drill there dash and put them higher, which I may do. Also, I remember years ago, there was a kit with an electric solenoid valve that would engage the fork. I haven't seen it advertised so I'm not sure if there were problems with that set up. Maybe someone else has experience with it and could chime in. Good luck with your project.