Grammatically, mieć takes the accusative case. But apetyt is a masculine inanimate noun, and in the singular its accusative form looks exactly the same as its nominative form. So:
So the case is accusative here, even though the word does not visibly change.
If you mean more appetite / a bigger appetite, the normal Polish expression is większy apetyt.
Lepszy apetyt is not the usual choice here. It would sound odd in most contexts, because lepszy means better, not greater.
With wczoraj, niż is the natural choice.
If you say od wczoraj, that usually means since yesterday, not than yesterday.
So:
That is why Mam większy apetyt niż wczoraj is correct for this meaning.
Yes, you can think of the full idea as:
Mam większy apetyt niż miałem wczoraj.
In English, that would be I have a bigger appetite than I had yesterday. Polish often leaves out repeated words when the meaning is already clear.
Not completely. Polish word order is fairly flexible, but Mam większy apetyt niż wczoraj is the most neutral and natural order.
You can move words around for emphasis, but then the sentence may sound more marked. For example: