He does actually have a helmet, it's just on layer 1. Setting all `layers` to 0,1,5 ensures that the helmet is visible at all times.
The animations I used are the Royal Guard, which appears to be what you used too. I think he should be compatible with any character that uses "old_blasterchar" animations, considering the Royal Guard uses "splat_old_blasterchar".
As for the eye... yeah, I don't think there's really a fix for that. I had the idea of removing the eye model and texturing it directly onto his face, but was expecting there to be an issue with finding where on the texture I'd have to put it and if it would even be possible, or if the pixels would be too large. Neither of those were the problem. It appears that the Spaceman doesn't even use a texture for the yellow. It must be part of the material data or something. On the bright side, if you turn bsa_default on, he blinks (winks?) his eye, so... yay?
He also lacks transparency in his legs. Instead of having actual holes, he just has textures to represent what the inside of the minifigure would look like, were holes to be placed there. He also lacks the peg on his head that every other character with a standard head has. I believe these all point to this character using a really old model, made and dropped before the decision was made to make models (mostly) accurate to real LEGO minifigures.
One really interesting thing about the minifigure itself that I observed is, he doesn't appear to be in any official LEGO sets. He's not the Classic Spaceman, since his chest is too detailed and he has a visible visor, but no other Spaceman even has that spaceship logo on them, at least from what I could find through all the Astronaut variations on the wiki page. It appears to be a unique design made specifically for LSW1.