One idea although in no way proven is try to time your eating out and drinking around your exercise.
For example eating out and beer after a big ride isn't going to cause weight gain because you'll have a big calorie deficit but sitting at a desk all day then having pints and a 3 course meal is.
Sorry I should've been clearer. I don't want to stop eating out, cut down drinking etc I enjoy it far too much.
Maybe Myfitnesspal is the way to go during the week and just to see where I'm going way off the deep end and can potentially cut back.