Hi,
I think you have the Input Gain set correctly as without corrections it follows quite well. When it is following well its better to plot error to better see how it is doing. Also post the raw data (zipped) so we can plot and zoom however we wish.
Its good to fully characterize the open loop system (PID gains 0) to see what size and under what conditions the errors are. Then go open loop to see if things can be improved.
I think you simply have too high I gain so it is violently over correcting causing an overshoot stall and so on. You didn't tell us what values you tried. Maybe try 0.0001 then start increasing.