Here's what I'm slowly learning to do. I'm not perfect, and I'm still figuring out what works.
I try to always start with a nice big salad (assuming the dressing isn't already added and doesn't have tons of extras). While I'm getting the salad, I look around to see what's up there. I think, what do I REALLY want? Sure, I like potato salad, but if I'm also getting two other sides that I really like, do I still need potato salad, too? I remind myself that it's OK not to eat everything!
When I go back after my salad, I try to take a very small amount of everything that I truly want. I also try to keep my plate colorful.
If I do go back for seconds, I grab a smaller (dessert-sized) plate. I still obviously end up over-indulging, but considering how much food I used to eat at this things, it's certainly an improvement! I'm not big on sweets though so since you love sweets, this may not work in the same way.
I also try not to sit where the food is, if possible.