Maybe you eat healthy food that is high in nutrition and bulk so it makes you feel full instead of food that is high in calories and doesn't make you feel full so you keep eating until you gain weight. Make a journal of what you eat in an average day and you will see.
Since you are a teen, most likely, you are going through puberty. Even if you have all of the physical changes you get, it doesnt nessisarily mean your done with puberty. In puberty, jurassic changes with your metabolic rates are prone with you. You can either ear small amount and gain too much weight, or eat big amounts and gain no weight.