$A\times P$ – more precisely, an expression proportional to $A\times P + P\times A$ – wasn't set to zero. It was properly evaluated and the result gave the $iq\hbar B/c$ term.
Note that if $\pi$ were a vector of $c$-numbers rather than operators, $\pi\times \pi$ would be equal to zero. That's how the cross product behaves. So any term in the cross product $\pi\times \pi$ that is nonzero must be proportional to the nonzero commutators between the components of $\pi$. Now, all three components of $P$ commute with each other; and all three components of $A$ (which depend on the vector $x$) commute with each other. So all the terms in $\pi\times \pi$ must arise from the commutators of components of $P$, essentially a derivative with respect to $x$, and components of the vector potential $A$. By rotational symmetry, it's clear that one must get a multiple of $\nabla\times A$ in this way. And by the way, $B = \nabla\times A$ holds exactly even if there is a time-dependent scalar potential!
Let me write the calculation here:
$$ \pi\times\pi = \epsilon_{ijk} \pi_j\pi_k = \frac 12\epsilon_{ijk} [\pi_j,\pi_k]=\dots $$
Here, I could have replaced the product $\pi_j\pi_k$ by one-half of the commutator because it's multiplied by a $jk$-antisymmetric epsilon symbol, anyway. Continue:
$$ \dots = \epsilon_{ijk} [P_j,-qA_k/c] = \dots $$
Here, I used the distributive law for the commutator, realized that $[P_j,P_k]=0$ and $[A_j,A_k]=0$, so only the mixed commutators contribute something that is nonzero and these mixed terms are there twice, $[P,A]$ and $[A,P]$ with the opposite sign (cancelled by the opposite sign of the epsilon symbol), so it's enough to write one of them and erase the factor of $1/2$ again.
Now, $[P_j,Y]\equiv -i\hbar \partial_j Y$ so we have
$$\dots = -i\hbar \epsilon_{ijk} \partial_j(-qA_k/c) = \frac{iq\hbar}{c} \epsilon_{ijk}\partial_j A_k = \frac{iq\hbar}{c} B_i. $$
QED.