I think his love wore out, and yes he did "settle" with Randall it seems, but if Ennis and changed and had come around lookin' for him and wanted the "sweet life", I still think he would have dropped everything to be with Ennis.
It is my opinion that during the Cassie "girls don't fall in love with fun" blow-up in the bus station, that Ennis right at that moment suddenly realizes it all, how it all is, and how he denied it, took it for granted, didn't act on it, etc etc. But as we know, in the next scene, it then becomes too late.