Why not Ten jest dobry posiłek?
Because "this" is not used as a pronoun here (this dog, this man, this bottle), but as a subject (This IS). And the sentences of "This is/These are" model always require 'to' which is then not a neuter pronoun but the subject as well: To jest/To są.
Why can't I say "to jest dobre jedzenie"?
While the meaning may be close, "jedzenie" is "food", so it's not exactly the same as "meal".
What's the grammatical reason that "dobry posiłek" isn't in the instrumental here?
I thought there was no predicate nominative in Polish?
To put it simply, sentences that would translate to English as "this is…" use nominative.
Why not pośiłek (I hear an accent on the s). This just seems to be wrong.
It's a very practical spelling convention. Since si is always pronounced "śi", the diacritical mark is omitted. It's a mistake not to omit it. Same goes for ci and zi.
What's the rule(s) for dobra / dobre / dobry?
"dobra" is feminine singular, "dobre" is either neuter singular or 'not masculine-personal plural' (non-virile), "dobry" is masculine singular. They have to match the noun they refer to.