Can composition of integer polynomial and rational polynomial with a non-integer coefficient result in integer polynomial?
In fact, we may ignore the assumption that $q$ is monic. The composition $p \circ q$ cannot have all integer coefficients.
For let $p$ be a prime factor of some fully simplified denominator of a coefficient of $q$. Consider the largest $k$ s.t. $p^k$ is a factor of some denominator of a $q$ coefficient. Then write the polynomial $q$ as $x^j w(x) / p^k + s(x)$, where every fully simplified numerator of $w(x)$ is not divisible by $p$ and no fully simplified denominator of $s(x)$ is divisible by $p^k$, and where $w$ has a non-zero constant term. Do this by grouping all terms with denominators divisible by $p^k$, obtaining $x^j w(x) / p^k$, and all terms with denominators not divisible by $p^k$, obtaining $x(x)$.
Let $n$ be the degree of $p$, and consider the coefficient of $x^{jn}$ in $p \circ q$. One of the contributing summands will be $w(0)^n / p^{kn}$, which is fully simplified. And none of the other summands can have a denominator divisible by $p^{kn}$. So this coefficient is not an integer.
One can show this with some elementary properties of algebraic integers:
Fact. If $p \in \mathbb C[x]$ and $q \in \mathbb Q[x]$ are monic, $p(0) \in \mathbb Z$, $\deg p, \deg q > 0$ and $p \circ q \in \mathbb Z[x]$, then $q \in \mathbb Z[x]$.
Proof: We must show that all roots of $q$ are algebraic integers. Let $\alpha$ be a root of $q$. Then $p(q(\alpha)) - p(0) = 0$. The assumptions imply that $r(x) = p(q(x)) - p(0)$ is a monic integer polynomial. Because $\alpha$ is a root of $r$, it is an algebraic integer.