Translation:The dress is only available in these sizes.
OK, so it is "diesen" rather than "diese" because "in" is a two-way preposition, currently requiring Dative Case, so the change in case (plus the fact Größen is plural) means that the adjective (well, sort of "acting" adjective) "dies" must end with an -en? Is that how one makes sense of this?
It's a lot more usual to say "we only have the dress in these sizes" or "the dress only comes in these sizes."
Two reasons: First, "the dress is only in these sizes grates as a singular / plural mismatch.
Second, those usages give more information: The shopper who wants the dress in another size immediately knows whether it's only manufacturered in that size, or that it might be worth trying elsewhere.
"Es gibt" is German's equivalent to "there is" in English, saying that something exists or is present somewhere. The "es" is necessary for the idiom and for grammar; you can't leave it off because it's the subject of the sentence, and you can't just remove the subject of the sentence.
In this particular sentence, "das Kleid" happens to also look like a subject, so without "es," the sentence would be read as "The dress gives only in these sizes," which makes no sense.
Yes, "es" is part of "es gibt" and is the subject of the sentence.
The German sentence has singular "das Kleid," so your translation doesn't quite work. (It also sounds a bit awkward, so I wouldn't recommend it anyway.) The translation is more like "There is (or maybe "There exists") the dress only in these sizes," but that's obviously not a very natural-sounding sentence.
That wording sounds odd and unnatural to me, and I also would say it has a different meaning.
"The dress is there ..." sounds like it's referring to a location-- the dress is in whatever place "there" refers to. But "es gibt" isn't using that kind of "there"; it's using a generic "there is" that just means the dress exists, in no particular location.
So it's best to translate "es gibt" as "exists" or "is available" or "comes in only these sizes."
Declarative/statement sentences in German always put their verb second, so even if you put something other than the subject first, the verb has to go right after it. In English, yes-or-no questions put the verb before the subject, but that is simply not the rule in German.
Yes-or-no questions in German always put the verb first, before anything else.