Here is a relatively permutation-free proof (sorry, Asaf).
Write $\mathbb{C}_{\omega_1}$ for the forcing to add $\omega_1$-many Cohen reals. Let $X$ be a set of reals in $\mathsf{HOD}(\mathbb R)^{V^{\mathbb{C}_{\omega_1}}}$. So there is some formula $\varphi(x,\vec{\alpha},r)$ with free variable $x$ and parameters $\vec{\alpha},r$ which defines $X$ in $V^{\mathbb{C}_{\omega_1}}$.
Without loss of generality (by moving to an intermediate extension if needed), we can assume the parameters are already in the ground model $V$. Furthermore, we break $\mathbb{C}_{\omega_1}$ into the two-step iteration $\mathbb{C}\ast\dot{\mathbb{C}}_{\omega_1}$, where $\mathbb{C}$ is the forcing to add a single Cohen real.
Now if $V[c]$ is the extension by $\mathbb{C}$, then in it, $\varphi(c,\vec{\alpha},r)$ is a statement about ground model elements, so $V[c]$ thinks this is decided by the $1$ of ${\mathbb{C}}_{\omega_1}$. Now we consider cases,
Case 1: in $V[c]$, $1\Vdash_{\mathbb{C}_{\omega_1}} \varphi(c)$.
In this case, there is some condition $p\in V$ which forces that the canonical name of the generic filter names a real which, after forcing with $\mathbb{C}_{\omega_1}$, satisfies $\varphi$. But the forcing to add a perfect set of Cohen reals extending $p$ is the same as adding a single one extending $p$ (see Joel Hamkins's answer here). So if $r$ is a Cohen real extending $p$, in $V[r]$ there is a perfect set of Cohen reals extending $p$. But then in $V[r]$, $1\Vdash_{\mathbb{C}_{\omega_1}} \varphi(r)$. So in the final extension there is a perfect set contained in $X$.
Case 2: in $V[c]$, $1\Vdash_{\mathbb{C}_{\omega_1}} \neg\varphi(c)$.
This is similar to Case 1, except that one argues the perfect set of Cohen reals is disjoint from $X$.
By the way, the property of a set either containing or being disjoint from a perfect set is sometimes called (weakly-) Sacks measurable or Marczewski measurable.