$(\implies)$ We prove the forward direction by proving the contrapositive. Suppose that there exists a set $A$ with $P(A) > 0$ and $\sum P(A\cap A_n) < \infty$. Then we claim that $P(A_n\ \text{i.o.}) \le 1 - P(A) < 1$. By the Borel-Cantelli lemma (which does not require independence),
$$
0 = P\big((A\cap A_n)\ \text{i.o.}\big) = P\big(\bigcap_{n\ge 1}\bigcup_{k\ge n}A\cap A_k\big) = P\big(A\cap [A_n\ \text{i.o.}]\big).
$$
Hence, $1\ge P\big(A\cup[A_n\ \text{i.o.}]\big) = P(A) + P(A_n\ \text{i.o.})$. Thus, $P(A_n\ \text{i.o.})\le 1-P(A) < 1$, as desired.
For the other direction, we'll use this lemma:
Lemma. If for each $k$ sufficiently large
$$
\sum_{n=k}^\infty P\big(A_{n+1}\,\big|\, \bigcap_{i=k}^{n}A_i^c\big) = \infty,
$$
then
$$
P(A_n\ \text{i.o.}) = 1.
$$
$(\impliedby)$ Begin by writing
\begin{align*}
\sum_{n=k}^\infty P\big(A_{n+1}\,\big|\, \bigcap_{i=k}^{n}A_i^c\big)&=\sum_{n=k}^\infty \frac{P\big(A_{n+1}\cap \bigcap_{i=k}^{n}A_i^c\big)}{P\big(\bigcap_{i=k}^{n}A_i^c\big)} \\
&\ge \sum_{n=k}^\infty P\big(A_{n+1}\cap \bigcap_{i=k}^{n}A_i^c\big) \\
&\ge \sum_{n=k}^\infty P\big(A_{n+1}\cap \bigcap_{i=k}^\infty A_i^c\big).
\end{align*}
If $P\big(\bigcap_{i=k}^\infty A_i^c\big)$ eventually has probability $0$, the claim is proved since
\begin{align*}
P(A_k\ \text{i.o.}) = 1-\lim_{k\to\infty}P\big(\bigcap_{i=k}^\infty A_i^c\big).
\end{align*}
Otherwise, for each $k$ sufficiently large, we have $P\big(\bigcap_{i=k}^\infty A_i^c\big) > 0$, since the events $\bigcap_{i=k}^\infty A_i^c$ are increasing as $k$ increases, so the sum
$$
\sum_{n=k}^\infty P\big(A_{n+1}\cap \bigcap_{i=k}^\infty A_i^c\big)\ \text{diverges to $\infty$.}
$$
By the lemma, the claim is proved.