This proof is written by a user Batman as an answer to someone's question(just to give credit). Every proof that I've seen is the same idea, and I'm having trouble understanding it intuitively. (I don't see why to take n=N and why the max is used.) If someone could explain it in words it would be really helpful.
Choose ϵ>0. Then, there exists N such that for m,n ≥ N, |am−an|<ϵ. By the triangle inequality, |am|−|an|≤|am−an|<ϵ. Take n=N and we see |am|−|aN|<ϵ for all m≥N.
Rearranging, we have |am|<ϵ+|aN| for all m≥N. Thus, |am|≤max{|a0|,|a1|,…,|aN1|,ϵ+|aN|} for all m. Thus, am is bounded (it is sandwiched in ±max{|a0|,|a1|,…,|aN1|,ϵ+|aN|}).
There is a tail of the sequence such that the terms in the tail are close enough to a certain term in the sequence. Now we just have to take care of the terms in the sequence that are not in that tail, and this is simple because there are only finitely many such terms.