The following is proved (independently?) in [1] and [2]: Every polynomial decomposition over $\mathbb Q$ is equivalent to a decomposition over $\mathbb Z$.
Specifically it says that if $g\circ h \in \mathbb Z [x]$ with $g,h\in \mathbb Q[x]$ then there exists a linear polynomial $\varphi\in \mathbb Q[x]$ such that $g\circ \varphi^{-1}$ and $\varphi\circ h$ are both in $\mathbb Z[x]$ and $\varphi\circ h(0)=0$.
[1] I. Gusic, On decomposition of polynomials over rings, Glas. Mat. Ser. III 43 (63) (2008), 7–12
[2] G. Turnwald, On Schur’s conjecture, J. Austral. Math. Soc. Ser. A (1995), 58, 312–357
Now suppose that $f(x)$ satisfies $f^{(2)}, f^{(3)}\in \mathbb Z[x]$. Then, as in David's answer, the polynomial $F(x)=f(x+f(f(0)))-f(f(0))$ satisfies $F^{(2)}, F^{(3)}\in \mathbb Z[x]$ and $F(0)\in \mathbb Z$.
Let's write $F(x)=a_nx^n+\cdots +a_0$. Assume that there exists some prime $p$ for which $v_p(a_i)<0$. From the statement quoted above, there exists $\varphi(x)=a(x-F(0))$ such that $\varphi\circ F\in \mathbb Z[x]$. This means that $v_p(a)>0$. We will also have $F\circ \varphi^{-1}\in \mathbb Z[x]$ so $F(\frac{x}{a}+F(0))\in \mathbb Z[x]$.
Suppose that $k$ is the largest index for which $v_p(a_k)-kv_p(a)<0$. This must exist because $v_p(a_i)-iv_p(a)<0$. Then we see that all coefficients coming from $a_r\left(\frac{x}{a}+F(0)\right)^r$ for $r>k$ have $v_p>0$. This means that the coefficient of $x^k$ in $F(\frac{x}{a}+F(0))$ must have $v_p<0$, which is a contradiction. Thus we must have $F(x)\in \mathbb Z[x]$ and therefore also $f(x)\in \mathbb Z[x]$.