It's the carbs that are making you gain weight.
If you are eating naan, stop it. Instead eat regular roti that is made from aata (which is basically whole wheat flour). Roti is less fattening than chawal. If you want to eat rice...then eat brown rice which is less fattening and more nutritious than white rice.
If you're eating 2-3 rotis AND chawal every day on a regular basis......then of course you will gain weight. I don't really like rice, I'm more of a roti person. But when I want to lose weight.....I eat roti only once a day (either for lunch or dinner) So, if I have roti and salan for dinner....then for lunch I'll only have a salad that contains protein (such as beans/egg/chicken). Or if I have roti for lunch........I'll have a healthy salad for dinner.
For breakfast.......try a glass of low fat milk and a fruit. Or low fat milk with boiled egg.
For lunch.......how about a salad? You can make your salad more filling by including some protein such as beans (chick beas, kidney beans).....or boiled and diced egg......or a shredded chicken. You can even do a combination of a small salad and a low fat vegetarian soup for lunch. Or a baked sweet potatoe with some lemon juice and chat masala. Or eat a low-fat yogurt chaat for lunch. To the yogurt add some chanay, tomatoes, onions, and masala. ALL OF THESE things are low fat.....low calorie......and very nutritious alternatives. And these examples can be used to substitute roti/rice for lunch. So try (soup, salad, baked sweet potato for lunch).
For Dinner...........If you're going to eat rice......stick to brown rice. If you plan to eat roti........please just eat ONE roti. If you STILL feel hungry after one roti.......then add some salad to your plate (lettuce, tomatoes, cucumber). The salad has very few calories and no fat........and it will FILL YOU UP so that you don't end up grabbing a second roti.
For snacks..........you'll have to exercise more discipline. There is no need for you to have chips, coke, and fanta on a daily basis. If you are exercising on a regular basis.....then it won't hurt you that much to eat this junk food. But if you're NOT even exercising regularly.......then it's not smart to eat these things every day even if you are doing "portion control"....because it eventually adds up. For snacks.........try lemonade or a low-fat smoothie/milkshake instead of soda. The best thing to drink is water. And instead of eating chicken/kababs/chips/bisucits for snack.............try eating a fruit. Many fruits help your body feel less hungry. You can even eat a protein snack such as almonds and walnuts. Get plain almonds, not the roasted ones. And dried fruit such as raisins and dates and dried apricots are very healthy, low calorie, and filling. Or you can eat popcorn (without butter) and pretzels for a snack.
****Exercise is a MUST to lose weight. Cardio (running, jumproping, jogging) helps to lose weight. And if you combine cardio exercises with lifting weights.......you will lose weight even faster. If you don't want to go to the gym..........then get a pair of 10 pound weights.........and you can lift those weights at home in the privacy of your own room. Put on some music and lift the weights. Or watch tv while lifting weights. And you can buy a jump rope and jumprope for 15-30 minutes at home. Or watch and follow an aerobics video/dvd.