only purples needed a de-saturation, actually (at least imho). I also added an intermediary shade for every tint.
i tried to fix the chop by moving the head one pixel down, which didn't looked fully satisfying ... i guess i'll go for a separate helmet sprite.
also experimented some hue shift in the helmet on the right one. i cannot stand plain yellow rasters anymore 
-First, Its not really a matter of only desaturation of colours, its a matter of a more careful, "intelligent" choise of colours. Unless you are limiting yourself to the EGA pallette, there´s no reason for you to keep those colour choises (its a bit tricky tho, since they are a integral part of the character, but you have to balance design vs source; in that sense, as long as you can balance it, theres no need for instance, for keen to have a pure white/gray face, as you will see ).
I took the liberty of making a really rushed edit, it also has a lower colour count, and can be easily optimized for even less, try to choose your colours and tint, in such a way that they can be used in other parts of the sprite, hence, you´ll have a more eficient pallette (some people do this after the finished sprite, but then, you loose a bit of the char, and IMO you need to reworks some aspects).
The ramp of your colours also seems pretty straightforward, and you should move away from that (and round it up with what i said before about mixing your colours), for instance, the yellow in the helmet just gets darker or desaturated, but it doesnt really swings towards another colour; thats a mistake, (IMO) as you should tint the yellow with orange for instance, and it would make the darker colour used as shadow more richer, and then, you can use that same colour as a shade for the face...get the point?
Second, we have the way in wich you are shading the sprite, there doesnt seem to be a real relation between shape, light and the effect that it has on the rest of the body, and some of your shading just seem random.
Take for example, Keen´s left shoulder...the light source seems to be in front of him (his left side taking in account how the rest of the body is shaded) and his left arm is covering the light from getting there, and forming some sort of "corner" with the head, wich make it, i dont want to say "dark" place in the body, but certainly, should be darker than the rest, like the torso wich seems fully lighted up.
Try as an exercise to just shade with the same 2 or 3 colours, dont add any more, try to really wip the shape of the character up, how one thing that is on top of another in relation of the light casts a shadow, wrinkles, etc!
-Third problem i have, is the stance like i already told you, a second sprite is not really neccessary, you just need to use some efficient pose, and then you can kill to birds with one stone, as you can give the character a real personality.

Also, hope you get some ideas out of the edit
Also, all the colours could help you get rid (tho personally i love black outlines) of the black outline, and replace it with a colored one, wich can help you see how the shape should react to light.