Aside from the tornado, I don't really see anything *that* much that needs to be changed.
In addition to some poor dialogue choices, a poorly done romance, the tornado scene, and a kinda mishandled approach in how to portray Johnathan and Clark's relationship, I think there was a big failing in the ending.
I'm fine with Superman killing Zod, I think that was a pretty daring choice and it makes the character really question his decisions going forward. But how they transition from that to the next scene was jarring. I get the he's not really yet 'Superman', but we needed to see him finally become that character. He needed to emerge from that train station, look around, and see just much damage he did to Metropolis. Not directly, I'm not one of those "SUPERMAN KILLED THOUSANDS OF PEOPLE" critics, but he was part of that battle, and he needed to see the toll his fight cost. We needed to see people trapped in the rubble, being freed by this figure that they don't know whether to perceive as an angel or a menace. Helping the rescue crews, and having some people who obviously lost their families lash out at him in anguish. Then Supes goes down, talks to them, and manages to convince them to help him provide others with aid and support. THAT'S Superman. THAT'S what he had to become in this movie, and it didn't happen.
And then you cut to him reflecting on what happened with his mother, his decision to kill Zod, the direction he chooses to take his life from here... That's a big moment that this movie was sorely missing. It ultimately robbed the movie of an ending for its main character's emotional arc. And you can't just brush that aside as "well they'll deal with that in Batman v Superman". I mean sure they will, but this movie, as a singular film, needed that closure.