Whatever meta description you provide is not necessarily the one Google will use. Be sure to provide unique descriptions for each page optimized for the user searching for those terms.
When is the last time content on the site was updated?
My first thought is to look at the freshness of your content, even more so if your competitors are providing fresh content at a regular pace.
It's really hard to tell you what is going on with no information or without the ability to look at the site. It is not unheard of for a newer page to pop up with relatively higher rankings and then eventually settle into a lower position. Sometimes referred to as the 'Google Dance'.
Also, are you using the tools available in Moz for page grading and competitive analysis?
If you feel uncomfortable about sharing info openly in QA, but would like a little more help, you can private message me. I don't mind taking a really quick look to see if I notice anything outstanding.