1) You just found something that is quite complicated for foreign speakers to learn in German language. If we are speaking about a specific address or a city German speakers are using "in".
Example-time:
Wir treffen uns in Frankfurt.
Wir treffen uns in der Frankfurter Straße.
The Straße in "Frankfurter Straße" does not mean the street itself as an object. You don't stay directly on the street. First example should be clear: You are meeting somewhere in the city of Frankfurt.
At the beginning "meeting in a street" may sound weird, but it's the way we say it. When you say "auf der Straße" you usually mean outside at the street or on the walkway.
Same thing with the "Markt":
- Wir treffen uns auf dem Markt
This could mean a) on the marketplace outside, or b) if there is a specific market like "Wochenmarkt" which can also take place inside a hall, it could mean that you are meeting in the hall, but at the market.
- Wir treffen uns in dem Markt
This usually means that you are meeting at a supermarket. It's in a closed building and you are meeting into that building.
2) The difference is pretty easy: The first one is correct, the second one isn't. You are using the wrong Kasus. It has to be "in dem Geschäft".