First, supposing $a_{n+1} = 0$ for some $n$, then $a_n = 0$, and if $n > 1$, we get $a_{n-1} = 0$. Repeatedly, we have $a_n = 0$, so $a_n \neq 0$ whenever $n > 0$. \[ \frac{n(n+2)a_n}{n+1} - \frac{(n-1)(n+1)a_{n+1}}{n} = n(n+1)a_na_{n+1} \] is equivalent to \[ \frac{n(n+2)}{(n+1)a_{n+1}} - \frac{(n-1)(n+1)}{na_n} = n(n+1) \] We obtain that \[ \frac{(n-1)(n+1)}{na_n} = \frac13(n+1)n(n-1), \qquad n > 1 \] Therefore $a_n = 3n^{-2}$ whenever $n > 1$.
Given that $|b_n| \le M$ over all positive integers $n$, thus whenever $n > 1$, \begin{align*} \left|\sum_{k=1}^n a_kb_k\right| &\le |a_1b_1| + \sum_{k=2}^n \frac{3|b_n|}{n^2} \\ &\le |a_1b_1| + \sum_{k=2}^n \frac{3M}{(n-1)n} \\ &= |a_1b_1| + 3M \sum_{k=2}^n\left(\frac 1 {n-1} - \frac 1 {n}\right) \\ &< |a_1b_1| + 3M \end{align*} So \[ \lim_{n\to\infty}\frac{\sum_{k=1}^n a_kb_k}n = 0 \] Q.E.D.