I had a similar situation.
I was trying to rank for "widget photos"
I have a page mydomain.com/widget-photos.html
It was ranked NOWHERE in google (like page 30 or something)
A different page, mydomain.com/widget-images.html was ranking for the term "widget photos" instead of the /widget-photos.html page. The /widget-images.html page was, similar to yours, ranking around Page 5.
The /widget-photos.html had some external backlinks, the /widget-images.html page had NONE.
The /widget-photos.html page was ONE click away from the home page, while the /widget-images.html page was TWO clicks away.
Could not figure it out. I was banging my head against the wall.
Then someone pointed out to me that I had accidentally meta noindexed my HOME PAGE - not the widget-photos.html page, but my index.html page.
I fixed it, and one week later both the home page AND the /widget-photos.html page were ranking again.
So when google devalues / revalues your home page, strange things happen to your strongest pages.