Ward hasn't been switching between good/bad guy.
On the bus, Ward said "I could've crossed off that druglord without getting my picture taken. A single shot from a half mile away".
Ward is a stone cold killer from a distance. In jail Garrett says that Ward broke out, stole a car and drove 1,000 miles just to burn down his parents house. Distance.
Garrett told Ward to kill the dog so Ward went into the forrest with a pistol but was too close, too attached to the dog to kill him and let the dog go. The dog is seen running through the forrest in a rifle scope (Ward's rifle scope - that he had just shot the deer with). Ward did kill the dog... with the rifle... at a distance.
When Ward is chasing FitzSimmons, is when the flashback occurs and it is like Ward is remembering that he has a weakness when he is too close (distance) to things. When he presses the button to eject FitzSimmons that is when the dog is shot with the rifle. He ejected FiztSimmons from the bus to get distance from them. He could have gotten into that container over time, he could have gotten a gun or Deathlok to kill them.
I doubt FitzSimmons are going to drown, but FitzSimmons did radio Coulson when they found the bus, Simmons said they were three hours away from Coulson.
Another thing it seems many people missed. Ward was left out in the forrest '15 years ago'. Garrett comes back and Ward says that he has been out there for 6 months and that he was thinking of building a cabin. In a later scene, it says '10 years ago' Garrett has returned to visit Ward, there is a cabin in the background, and Garrett tells Ward he has been accepted to SHIELD. Garrett was alone with that dog for 5 years in the forrest.