If the roots of the order-$n$ polynomial $p(x)$ are (including multiplicity) $\lambda_1, \ldots, \lambda_n$, then, the polynomial can be written as
$$\alpha(x - \lambda_1) \cdots (x - \lambda_n),$$
where $\alpha$ is the leading coefficient of $p$. Now, expanding gives that the constant term is
$$p_0 = (-1)^n \alpha \lambda_1 \cdots \lambda_n.$$
If $p$ is rational (so that $\alpha$ is rational) and precisely one root $\lambda_a$ is not rational, then $p_0$ is not rational; contrapositively, if $p_0$ is ration, $p$ cannot have precisely one nonreal root.
Similarly, if $p$ is real and precisely one root $\lambda_a$ is not real, then $p_0$ is not real, and so, if $p_0$ is real, it cannot have a single nonreal root. In fact, we can show that nonreal roots of real polynomials always come in complex conjugate pairs: If $z_0$ is a root of the real polynomial $p$, so that $p(z_0) = 0$, then applying conjugation to both sides gives that
$$0 = \overline{p(z_0)} = \bar{p}(\overline{z_0}) = p(\overline{z_0}),$$ and so $\overline{z_0}$ is also a root of $p$.