I think he could have (theoretically) done this two seconds after he said "I ain't queer ya know." Ennis was not stupid, he was a very naturally intelligent man, albeit uneducated, and ignorant to a lot of things, but he was far more in touch with his own personal reality than people realize.
Ennis was one of those "knower of truth" individuals. He instinctively knew not only his own personal truth (which he would never reveal), but knew the truths of others without the need of a lot of talking. I think that is what I find most tragic in this character. The loss of potential. His potential was indeed a great.
I agree with Scott here. In fact, I think it is shown in two specific moments. The scene right after the Thanksgiving scene, when they are at the lakeside, Ennis asks Jack if he ever gets the feeling that people look at him as if they knew he's queer. Jack gets mad at him and suggests him to get out of Riverton. To Texas maybe?
The second moment is when they have the last fight. Ennis says he knows what is in Mexico for boys like Jack. IMO those two moment somehow illustrates that Ennis besides being in denial, deep down knew who he was. That's the reason why he kept fighting with himself, because he didn't want to be gay eventhough he knew very well who he was and couldn't help being in love with a man.