Hi Piglet,
I think u gain weight cos you eat late dinner at 9-10 pm. If you eat dinner so late, then to gain weight. Everytime I on serious diet, i will go carbo with no rice/noodles/bread at all. Also, i normally don't eat anything after 6pm. I can lose 3 kgs within 3 to 4 days using this method. My best friend put on weight from 48 to 52 for one year plus. REcently, she tried my method and now back to 47. She is very happy! Maybe u can try.
Cheers.