Superman killing Zod never bothered me. He’s killed Kryptonians in the comics under extreme “this is the only way to defeat them” situations (Superman volume two, number 22 or 23. It’s one of Byrne’s last issues) so being in a tight spot in the movie and doing it made sense to me.
Plus, Superman was still in the infancy of being a superhero. The Man of Steel Superman isn’t the Superman that can pull an ocean liner out of the ocean while knocking out Intergang in one fell swoop and putting out a huge fire all at once. It just isn’t. He’s still gaining experience at the whole “hero to the world” gig. This is a Superman who is learning as he goes along and you just know that if he WAS the “can do it all at once” Superman people would have complained at that and wanted to see him learn as he goes.
I think killing Zod was a learning step. Superman had yet to be in a situation where he had to save other people that were directly in the way of a physical assault from Zod and to him in his limited experience, it seemed like the only way to diffuse the situation. I think afterward, Superman did realize other ways he could have stopped Zod and would put those to use when in a similar situation in the future.