[step:Prove the perfect-set dichotomy in Cantor space]Let $B \subseteq 2^{\mathbb{N}}$. We prove that, under $\mathrm{AD}$, either $B$ is countable or $B$ contains a nonempty perfect subset of $2^{\mathbb{N}}$.
Define the perfect-set game $G(B)$ as follows. A finite binary sequence is an element of $2^{<\mathbb{N}}$. A position for player I is a finite binary splitting system: a map $S:2^{\leq n} \to 2^{<\mathbb{N}}$ for some $n \in \mathbb{N}$, satisfying $S(t) \subsetneq S(t^\frown 0)$, $S(t) \subsetneq S(t^\frown 1)$, and $S(t^\frown 0)$ incompatible with $S(t^\frown 1)$ for every $t \in 2^{<n}$. A legal play is a sequence $(S_n,b_n)_{n\in\mathbb{N}}$ such that $S_n:2^{\leq n}\to 2^{<\mathbb{N}}$ is a finite binary splitting system, $S_{n+1}|_{2^{\leq n}}=S_n$, and $b_n\in\{0,1\}$ is player II's choice after $S_{n+1}$ has been played. Thus player II determines a branch $b \in 2^{\mathbb{N}}$, and the coherent systems determine the real
\begin{align*}
x_b := \bigcup_{n=0}^{\infty} S(b|n) \in 2^{\mathbb{N}},
\end{align*}
where $b|n \in 2^n$ denotes the initial segment of $b$ of length $n$. Player I wins the play if $x_b \in B$; player II wins otherwise. This is a Gale-Stewart game with moves coded by natural numbers, so by $\mathrm{AD}$ one of the two players has a winning strategy.
Suppose first that player I has a winning strategy $\sigma$. For each $b \in 2^{\mathbb{N}}$ and each $n \in \mathbb{N}$, let $S_{\sigma,b,n}:2^{\leq n} \to 2^{<\mathbb{N}}$ denote the finite binary splitting system played by $\sigma$ at height $n$ in the play in which player II chooses the successive bits $b_0,\dots,b_{n-1}$. Define $S_\sigma(b|n) := S_{\sigma,b,n}(b|n)$, the node of that splitting system along the branch $b|n$. Define
\begin{align*}
F_\sigma:2^{\mathbb{N}} \to 2^{\mathbb{N}}
\end{align*}
by
\begin{align*}
F_\sigma(b) := \bigcup_{n=0}^{\infty} S_\sigma(b|n).
\end{align*}
Because $\sigma$ is winning, $F_\sigma(b) \in B$ for every $b \in 2^{\mathbb{N}}$. The map $F_\sigma$ is continuous: for each $k \in \mathbb{N}$, the first $k$ digits of $F_\sigma(b)$ are determined once $b|n$ is long enough that $|S_\sigma(b|n)| \geq k$. The map is injective because if $b,c \in 2^{\mathbb{N}}$ and $b \neq c$, then for the first $n \in \mathbb{N}$ with $b_n \neq c_n$, the splitting requirement makes $S_\sigma(b|(n+1))$ and $S_\sigma(c|(n+1))$ incompatible. Hence $F_\sigma(b) \neq F_\sigma(c)$.
Since $2^{\mathbb{N}}$ is compact and has no isolated points, $F_\sigma[2^{\mathbb{N}}]$ is compact and has no isolated points: compactness follows from continuity, and if $F_\sigma(b)$ were isolated in the image, then its singleton preimage would be open in $2^{\mathbb{N}}$, contradicting that $2^{\mathbb{N}}$ has no isolated points and that $F_\sigma$ is injective. Therefore $F_\sigma[2^{\mathbb{N}}]$ is a nonempty perfect subset of $B$.
Suppose instead that player II has a winning strategy $\tau$. We use Martin's perfect-set game lemma for arbitrary subsets of Cantor space, included in the theorem statement as a standard consequence of $\mathrm{AD}$: for the perfect-set game $G(B)$ on $2^{\mathbb{N}}$, if player II has a winning strategy, then $B$ is countable.
The hypotheses of the lemma match the present situation: $G(B)$ is exactly the perfect-set game on $2^{\mathbb{N}}$, the payoff set is the arbitrary set $B\subseteq 2^{\mathbb{N}}$, and $\tau$ is a winning strategy for player II. Therefore $B$ is countable.[/step]