I'm not a professional by any means, but I can tell you what works for me. When you eat, chew slower. It takes your brain a little bit to get the impulses of your appetite. Sometimes if you eat say a sandwich, you'll still feel hungry, but if you wait a few minutes and don't eat anything afterwards then it will go away. I think that is because it takes a while for the signals to travel to your bain.
I chew slower, and I drink a lot of liquids before and after meals. It really fills you up. I found personally that when you drink a lot of water, that "fullness" doesn't last long, but if I drink something like fruit juice then it lasts longer. I also buy freshly blended fruit smoothies from the store that are really low in fat and calories and that fills me up better, but I usually just drink water and deal with it.
Also I find I get hungrier when I am bored and have nothing to do, so you sort of just think about food and it makes you get hungry. I like to stay active. Workout, play sports. When you do those things it keeps food off your mind and you focus on what you are doing. It helps balance out your meals so you don't get out of control.
Stay active, and eat healthy if you want to lose the weight or want to stop gaining it would be my advice. If you have a craving you can't control then snack on something healthy. Like pretzels, kosher dill pickels, even yogurt is pretty healthy. Maybe snack on some fruit as well or vegetables. Like cucumbers.
Try keeping the snacks out of arm's reach also. It sounds too simple, but it works. We are more likely to reach for a snack if we don't have to get up for it. If you are sitting down and are kinda hungry but have to walk 3 rooms to get a snack, then you will be less likely to do it.