Backtracking several episodes, Ezekiel has been erasing Sam's short-term memory whenever he comes out, so that Sam wouldn't remember the specifics of what happened and Dean could explain it away as "you got knocked out cold", or whatever he comes up with on the spot.
At least, he was up until 9x04, Slumber Party. Dean called Ezekiel out in order to heal Charlie. Later, I believe in the episode or two following, Sam asks Dean, "Who is Zeke?"
If Ezekiel was in control the whole time, and pretending to be Sam, there would have been no reason to do that. He would have remembered that he was "erasing" Sam's short-term memory. That event in particular seems to indicate he was actually being weakened by continually having to save Sam, Dean, and now Charlie. He even made it a point beforehand to say that he could help Charlie or help deal with the witch - but not both.
His later conversation with Metatron seems to bear this out; he fully intended to do what he said to Dean: Heal Sam and then leave, because he wants to be "good" again. If he was in control of Sam the whole time, it would have been a bit of a disaster when he finally did leave.