If I play Ezreal with 0 cards in hand, do I still draw 2?

Yes, you still draw 2 cards.

According to Rule 055 (the "Do as much as you can" rule), when executing card text, you follow all instructions you can perform and ignore those you cannot. Since you have no cards in hand to discard, you simply skip that part of the instruction and proceed to the next, which is drawing 2 cards.

This is consistent with RiftJudge FAQ #1150, which clarifies that "then" indicates sequential instructions rather than a cost requirement, and that you perform as much of the sequence as possible.