I'm a social psychologist, but I did study behaviorism a bit. I think that part of the problem is that food has immediate positive effects. It fulfills a basic desire quickly in a way that thinking about long term goals does not. If there were an immediate and consistent reward you could give yourself for eating right that would please you as much as eating the food, then it would be much easier.
I do think that behaviorism is too simplistic of a way to look at all things. Philosophically I think that you are always going to choose what appeals to you most at the time you make the decision. So to change your eating behavior you need to change what appeals to you most at the time you are making the decisions. I could never do it before, but I have a motivation change now. Used to be I wanted to lose weight to look better, but looking better a year in the future would fail when I put it up against stuff I wanted then.
Now I am doing it for my health. I am prediabetic. I will become diabetic unless I do something. I have PCOS. I got pregnant and lost the baby. (This is more common for women with PCOS than others). It is no longer a matter a looking better, it is a matter of my health and potentially a future child's life. Fixing my eating has immediate effects, like not being hungry constantly. I know that when I eat incorrectly I am going to pay for it with cravings. And it doesn't take long to begin to correct the prediabetes. And weighing that against ice cream, for once I'm much less tempted. I hope that it will serve me in the long run.