Sarah,
I see you placed this question almost a week ago and received no help with it. First, I should say that probably the complexity of it without a url or example.com diagram makes it quite difficult even for those who are very experienced in Local optimization. Next, I saw a red flag from the beginning and I want to be very sure I understand what you have: You have bricks and mortar stores in various locations and you have an ecommerce site that represents all of those stores (my first thought is, like a Costco or other discount warehouse merchant).
You have claimed all the locations in Google (you mentioned hummingbird) and have a local/G+ page for each and now, you are slipping in the rankings of the Local (7-pack) or for terms with keyword and geo keyword? (which or both).
Now, you want to implement a branch locator on the site and "from looking at other websites with branch locators, they tend to a separate button/page with which you can search for a branch etc. However, they don't have location specific pages." This practice makes you wonder what a best practice would be (correct?) If the find a location link is in a sidebar or header (not the footer as that would be poor UI/UX) it will show from any page.
To me, the second question is telling in that you are looking at someone searching for a location who is already on the site. While they will do that, you also must consider those who are searching and see your page in the SERPs. What do you want them to do? Do you want them to come to the site before they find a location? Or, are you fine with them shopping bricks and mortar first and foremost?
I would set up each location with a "location" page that is reached from a separate branch locator page that is linked to from the other pages you want searchers/shoppers to be able to find locations from.
So, if you sell furniture, I would have a link in the outdoor furniture section, the tables section, the bedroom section, etc. and all would link to a single locator page where one could input a zip or city, state. (It could even have a list of locations if there are not too many for that.)
If the page is on your site and the onpage SEO is around Find A Store Near You for example, there is a good chance that Google will site link that page. (Now, your searchers can choose find a store or shop online.) With the individual city or store pages, I would optimize them so they work for you Local G+ and you will still have the opportunity to rank for non Local SERPS with other pages. The 7 pack is local and the other organic listings allow you more possibility to rank. Remember, typically, a page that is in the 7 pack, etc. will not show in the other organic listings.
One assumption I am making is the stores do NOT have their own websites.
Hopefully, I have given you enough or provided good questions so that with answers we can assist you further.
All the best,
Robert