I think the "rewind time" ending works much better on the first film than the second. In the first, it's the whole crux of the story-- Superman needs to be in two places at once, but he can't. Ah, but he can
, but only if he violates Kryptonian law. So he does, and chooses the American way over the Kryptonian one. It's the climax of his emotional journey and
it's the only way out of the dilemma Lex has constructed.
In the second film, it's totally random. Superman's won
-- why does he need to rewind time then? And if he is going to do it, why doesn't he just do it beforehand? Why does he need to beat Zod and company first?