One way would be to save the coordinates at the beginning and the end of of the touch, and then calculate the angle of the resulting vector. Problem is this only works for one clean swipe. For long, continuous gestures with changes of direction without releasing the touch, you'd need to repeat the above action periodically. Like every 500ms or every second, get the current touch coordinates, calculate the vector using the previously saved coordinates, rotate you sprite, update those said previous coordinates with the current one, and repeat until the touch is released.
In order to get a clean rotation and not a jittery animation, you could use the Rotate Toward Angle action instead of Set Angle
This was one of my first approaches. I tried recording the X values and Y values then calculating that difference based on the end of the swipe, but as you said, it would be a periodic change where you would have to let go of the touch. In my specific case, this involves not releasing the touch at all, so it has to be fluent and smooth. I used Rotate Toward Angle and it still seems to be producing an undesired look. :( Thanks for the help :)