I would translate/explain the sentences like this.
The first and the third say the same thing actually: You will leave after two weeks certainly.
Ich wohne (für) zwei Wochen in Hamburg.
I stay in Hamburg for two weeks.
The same for the second and fourth, which say that you've lived here for two weeks already and you intend to keep on doing so:
Ich wohne schon (seit) zwei Wochen in Hamburg.
I've been living in Hamburg for two weeks already.
I would add that the difference is, that the one using "seit" is referring to the actual date when you started living there. Whereas the one without has a reference to the amount of time.
Here's another example, where you have to use "seit":
Ich wohne seit November in Hamburg.
I've been living in Hamburg since Novmeber.