I think its mostly because the earth's shadows is significantly larger than that of the moon. In a solar eclipse, the entire sun is only blocked for a small region on the surface of the earth (i.e. not even the entire earth is in the moon's shadow). For a lunar eclipse, more than the total moon is covered in shadow (i.e. even if the moon moves a little, it's still entirely in the shadow).
That's right. It boils down to the Earth itself being much larger then the moon, so it takes a while for the moon to get through Earth's large shadow. But as Zhermes said above, the moon's shadow doesn't even cover most of the Earth.
Also because the moon is much less nutritious then the sun so the demons have to spend longer eating it before they are full. :)