Initial values ARE important. Think of this as a (time-discrete) dynamical system. The system might be globally asymptotically stable for some choices of $f_n$, but not for others. Now, in your first example, the exponential behavior of $f_n$ actually makes the sequence bounded.
For the general case, I would like to use induction. It would be great to be able to prove that if $M_1\leq c_i \leq M_2$, $i=n,n-1$, then $M_1\leq c_{n+1} \leq M_2$. By induction, this would give the boundedness of the whole sequence. Unfortunately I don't think this is possible, since one of the bounds would require $f_n<0$ and the other $f_n>0$.
But we can try this way. Assume again $M_1\leq c_i \leq M_2$ for $i=n,n-1$. If we can prove that
$M_1-a_n\leq c_{n+1}\leq M_2+b_n$
with $a_n,b_n\geq 0$
$\sum_{n=0}^\infty a_n<\infty\qquad \sum_{n=0}^\infty b_n<\infty$
then we still have boundedness for the sequence. If you do the calculations, you find out that what you need is
$-a_n\leq\frac{1}{f_n}\leq b_n$
So we can say that the sequence is bounded if
$\sum_{n=0}^\infty \frac{1}{f_n}$ is absolutely convergent. I don't know if this condition is also necessary. My guess is that this condition is necessary if you want global convergence (that is, regardless of the initial condition), while it might not be necessary for some $f_n$ and some particular choice of the initial conditions.