The key is that it must always have rational roots for any $p, q$.
Claim: Let $f(x) = x^2 + bx + c$, where $b$ and $c$ are rational numbers. If $f(x)$ satisfies the condition that for all rational numbers $r$, $f(r)$ is the square of a rational number, then $f(x)$ must be the square of a polynomial.
Proof: By completing the square, we simply need to consider polynomials of the form $x^2 + \frac{n}{m}$, where $m,n$ are integers and $\gcd(n,m) = 1$.
Consider $x = 0$ and $\frac{1}{m}$, which gives us $\frac{n}{m}$ and $\frac{1+mn}{m^2}$ are both squares of rational numbers. Multiplying both terms by $m^2$, we get that $mn$ and $mn+1$ are both integers that are squares of a rational number, hence they are perfect squares, so $mn=0$.
Since $m\neq 0$, hence $n=0$ and thus $f(x) = x^2$ and we are done. $_\square$
Corollary: $b=0$ or $1$.
Proof: Consider the polynomial $f(x) = \left( \frac{p}{q} \right)^2 + 2(1-2b) \frac{p}{q} + 1$. From the conditions, for rational numbers, this always evaluates to a rational square. Hence, we must have $ f(x) = (ax+b)^2$.
Comparing coefficients, we see that $ a ^2 = 1, b^2 = 1$, which implies that $f(x) = (x+1)^2 $ or $(x-1)^2$, which hence correspond to $b=0$ and $b=1$ respectively. $_\square$
Note: Franklin shows that the claim is true for all polynomials, though it uses more machinery.
Complete the square:
$$-3n^2-6n+1 = -3n^2-6n-3+3+1 = -3(n+1)^2+4.$$
For this to be nonnegative, we must have $(n+1)^2 \le \frac{4}{3}$. So $n=0, -1, -2$ are the only solutions, and $n=0$ gives a linear, not a quadratic, equation (though this special case would probably stop me from using this problem).
Best Answer
Starting with your discriminant: $$ c^2(9a^4+b^4+10a^2b^2+24a^3b-8ab^3) $$ we see that we can easily ignore the $c^2$ since that is already a square. Now, we look at the degrees of all the terms and notice that they are all degree $4$. Therefore, the factorization (if it exists) has to be of the form $$ (9a^4+b^4+10a^2b^2+24a^3b-8ab^3)=(x_1a^2+x_2ab+x_3b^2)^2. $$ Moreover, we can assume that $x_1>0$ since otherwise, we can multiply through by $-1$, which doesn't change anything since $(-1)^2=1$.
We can multiply out the RHS to get the following system of equations: \begin{align} 9&=x_1^2&2x_1x_2&=24&x_3^2&=1\\ 2x_2x_3&=-8&2x_1x_3+x_2^2&=10 \end{align} Therefore, $x_1=3$ from the first equation. $x_2=4$ from the second equation, $x_3=-1$ from the fourth equation. We can check that all of the equations are satisfied with these choices, so $$ (9a^4+b^4+10a^2b^2+24a^3b-8ab^3)=(3a^2+4ab-b^2)^2. $$