Especially with a ball screw - they're easier to back drive.
You could counter balance the z with an air cylinder. I have this in the works for my router when I switch to a water cooled spindle. Basically if you get a double acting cylinder, leave one end open and connect the other to a pressure tank that you pressurize to the needed pressure to balance your z weight, you should get a fairly constant force over the travel of the cylinder as long as the cylinder volume is much smaller than the pressure tank. Then all your motor has to do is accelerate and decelerate the load (which can still take substantial force).
CNC mill build thread: http://www.cnczone.com/forums/vertical_mill_lathe_project_log/110305-gantry_mill.html