So I guess it's just an issue of the arduino not driving a good 5V or gnd
No.
The problem is that the touch screen acts as a variable resistance, you need another resistor to turn this into a voltage you can measure on the arduino. By definition this means you can't pull the full range of 0 to 5v because of this fixed resistor. Unless as mowcius says you feed it with over and under voltages. However, that requires circuits for switching those voltages so the whole thing gets very messy very quickly.
I tried feeding the analog values back into a PWM output
That makes little sense, care to explain exactly what you did? You can't do what you said you did.