Could be the reason. Or perhaps his girly long hair gets in his eyes and blinds him?
Sephiroth doesn't kill Zack, he wounds him however.
(SPOILER)In VII Zack is gunned down by three shinra soldiers. For some reason they don't shoot Cloud. Either because they thought he was as good as dead or that bullets are expensive. In the anime movie (the name of which escapes me) he is shot with a sniper rifle. Lastly in Crisis Core he fights a lot of soldiers but eventually the numbers are too much for him. Wuss.