4 jobs in 7+ years is not job hopping. I doubt this will even come up. Job hopping would be like 6+ jobs in 7 years...
All you have to do is explain that your goal has always been want a stable, full time position with a bit of room for growth. You don't have to get into the details unless they press, and you can then tell them that in every case, the ~1 year jobs did not have steady full time positions. Period. The one you stuck around 4 years? That's nothing to be concerned about at all. You left after 4 years due to a move. "I really enjoyed working at COMPANY, but I needed to move and landed at CURRENT COMPANY."
I can't imagine any company scheduling a lunch meeting and not paying for their interviewee. It's a business expense. I hate because it's awkward to eat and talk unless you're buddies tho. So that's annoying, but very unlikely you'd need to pay. If you're super paranoid, you could just make sure you brought enough money to cover, but if they make you pay, that's a pretty shitty move on their part and not at all standard. I personally usually order something small and light because I don't want to be shoveling in mouthfuls of food during the questioning process, but just eat neatly and take reasonable bites, chew with your mouth closed and be personable. Ordering what others order is generally good, but don't go fussy (ask for lots of adjustments) unless you have food allergies. Be super, duper nice to any wait staff.
See this extremely helpful Ask A Manager post for details:
https://www.askamanager.org/2013/03/my-interviewer-wants-to-meet-over-lunch-and-im-freaking-out.html Smile, be confident, make decent eye contact and use short, factual, non-negative answers.
Example Question: Why are you looking for a job now? What's happening with the place that you're wanting to leave.
You: I really love what I do, but I am looking for a strong and positive company environment, I would like a full time position that can give me room to learn and grow. I've really appreciated the opportunity I've had at "current company" but it seems like there's not much else I can do there due to size/limitations (and say it is because it is a small family owned operation with limited long term potential for you). They are nice people, but I really think I'd fit better with "whatever this new company is like."
What is the dress code like at the company? If it is tee shirt/jeans, then wear business casual for an interview. Nice dress pants, button down long sleeve tucked in, nice tie, hair and overall appearance as neat and smart as possible. And wear NICE SHOES. I HATE it when someone dresses business casual and ruins the overall look with crummy shoes or sneakers (happens more than you'd think). If it is business casual, wear a NICE version of that, and a full suit wouldn't be bad either. Generally default to one step up from the overall dress code for interviewing but never lower than "business casual" dress. Even if a full suit would be "overdressed" for the office, this is an interview where you're putting on your best demeanor and selling yourself. The packaging should be really nice and smart looking.