I generally cheat and use a rotation tool on the previous frame (just the bit that's moving, to rotate it towards the new position) and then base my shading loosely off of that, with some variation for where the light would be hitting it (like if a leg is no longer getting shadow from something above it) by using a semi transparent layer with the rotated bit ontop. Obviously I dont use the rotated bit in the final sprite, as that would look horrible, but it helps keep my pixel clusters in fairly consistent spots.
That being said, your shading pretty much blows mine out of the water, so Im not sure how applicable that method is with all the subpixel stuff you have going on.
I think the two jumpiest bits you have on the legs, btw are right above the crotch, where the torso gains and looses a pixel, and the fairly intense jump from frame to frame on his butt. The butt seems to be constantly gaining and loosing 3 or 4 pixels. You also may want to ditch the sellout on his front leg and just use shading. I think those issues would pretty much fix it.
Also, welcome to pixelation! Nice to see more migration.