Ducky gave you some very good advice. When having your thyroid levels tested (do make sure you get the tests Ducky recommended), you might also get tested for insulin resistance and PCOS, both of which can cause weight gain/inability to lose.
You might also try switching up your exercise routine on a regular basis, since your body can become used to the same routine and it is no longer a challenge.
How long are you doing the training for? It's usually suggested to do 30 minutes - 1 hour, 5-6 times a week; and trying not to go over 2 hours or 6 times a week as it could stress your body out.
Is it possible you're being too strict with your diet? Are you getting enough calories, proteins, and fats to keep you going?
Define snacking? I have found it pretty helpful to add more food, more often over having just healthy foods. Basically I keep my meals between 300-400 calories and throw in a couple 100 calorie snacks in between. These can be anything from a glass of 100% juice or other serves of fruit, nuts, yogurt, cheese, etc. I never go more than 3 hours without eating, which I have found helpful partially because I'm never tempted to eat too much come meal time. But I also think it's good to keep your body eating at regular intervals. It might help you to try it, especially between lunch and dinner as most people seem to have very long times between them. Like I said, keep it simple, keep it light.
Lastly I really suggest a good multivitamin. Not only is this good for health reasons, but I feel like it's helped boost my metabolism some.
It's also important that potential medical issues be looked at. I suggest you get your doctor to test your thyroid, especially if you feel like you're doing everything right. Be sure to ask for Free T3 and T4 testing as they are typically more reliable than TSH alone at telling you what your thyroid is doing. Even the best diet and exercise program can be derailed by an unnoticed thyroid problem.