DS Touchscreen Calibration/Reading

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.