We want to show that for every $S \subseteq X$, $\lvert N(S) \rvert \geq \lvert S \rvert$, where $N(S)$ denotes the neighborhood of $S$.
Let $S \subseteq X$ be a minimal counterexample. This means that for every $x \in S$, $S \setminus \{x\}$ satisfies Hall's condition. Choose $x \in S$ and let $S' = S \setminus \{x\}$.
First, we may assume that $N(x) \subseteq N(S')$. If not, let $y$ be a neighbor of $X$ not in $N(S')$. Then, by hypothesis, we may match all of the elements of $S'$ to elements of $N(S')$ and may also match $x$ to $y$. Furthermore, we may assume that $\lvert N(S') \rvert = \lvert S' \rvert$: otherwise, we have
$$\lvert N(S) \rvert \geq \lvert N(S') \rvert \geq \lvert S' \rvert + 1 = \lvert S \rvert.$$
Now we match every element $z$ of $S'$ to an element $y$ of $N(S')$. By our hypothesis that $d(z) \geq d(y)$, we have
$$\sum_{y \in N(S')} d(y) \leq \sum_{z \in S'} d(z) \leq \bigl\lvert E\bigl(S', N(S')\bigr) \bigr\rvert \leq \sum_{y \in N(S')} d(y),$$
that is,
$$\sum_{y \in N(S')} d(y) = \bigl\lvert E\bigl(S', N(S')\bigr) \bigr\rvert.$$
This means that all of the neighbors of the elements of $N(S')$ are in $S'$, which contradicts our hypothesis that $d(x) \geq 1$. Hence, $S$ cannot be a counterexample, and $X$ satisfies Hall's condition.