A conjugacy class $C$ is rational iff $c^n\in C$ whenever $c\in C$ and $n$ is coprime to $|c|$.
Solution 1:
Let $\mathbb{Q}(\chi)$ be a finite normal extension of $\mathbb{Q}$ containing the coefficients of $\chi'(g)$ for all $g \in G$, where $\chi'$ is the representation associated with $\chi$. Let $m=|G|$ and $\epsilon$ be a primitive $m$th root of unity. Let $E$ be a finite normal extension of $\mathbb{Q}$ containing $\mathbb{Q}(\chi)$ and $\mathbb{Q}(\epsilon)$. Then there is an injective homomorphism $\psi:\mathbb{Z}_m^*\rightarrow G(E,\mathbb{Q})$ defined by $\psi(a)=\sigma_a$, where $\sigma_a(\epsilon)=\epsilon^a$. Now define $\chi_a' = \tau_a\circ \chi'$ (where $\tau_a$ is the automorphism of $GL_m(E)$ induced by applying $\sigma_a$ to the coefficients of each matrix element) and let $\chi_a$ be its character. Then $\chi_a(g)=\chi(g^a)$ (why?).
In one direction, $c$ is conjugate to $c^n$ for $\left(n,m\right)=1$, so $\chi(c)=\chi(c^n)$. Since $\chi(c^n)=\chi_n(c)$, we have that $\chi(c)$ is fixed under the action of $\sigma_n$. If this is true for every $n$ relatively prime to $m$, then $\chi(c)$ is fixed under the image of $G(\mathbb{Q}(\epsilon),\mathbb{Q})$. Thus $\chi(c)$ is a member of the fixed field of $G(\mathbb{Q}(\epsilon),\mathbb{Q})$, otherwise known as $\mathbb{Q}$.
On the other hand, suppose $C$ is rational and for some $\chi$ there's an $c\in C$ and $n$ relatively prime to $m$ for which $\chi(c)\not= \chi(c^n)$, then $\chi(c)$ is not fixed under $\sigma_n$, so it is not a member of the fixed field of $G(\mathbb{Q}(\epsilon),\mathbb{Q})$, a contradiction. So $\chi(c)=\chi(c^n)$ for every character $\chi$ of $G$, whence $$\sum_i \chi_i(c)\overline{\chi_i(c^n)}=\sum_i\left|\chi_i(c)\right|^2= |C_G(c)|$$ where the summation runs over all irreducible characters, which implies that $c$ is conjugate to $c^n$.