This is building on Martin R.'s answer, which I think misses a crucial element to show that at some point all the sequence elements must lie "near" the same limit point.
Since $A'$ is finite, let's assume the contrary of what we want to show, so we assume that $|A'| \ge 2$. Then we can choose $a_1,a_2 \in A', a_1 < a_2$ such that no real number in the open interval $(a_1,a_2)$ belongs to $A'$.
Set $\epsilon_0=\frac{a_2-a_1}3$.
Because $a_1,a_2$ are limit points of $A$, there must be two infinite sets of indices $I_1, I_2$ such that $\forall i \in I_1: |a_1-x_i| < \epsilon_0$ and $\forall i \in I_2: |a_2-x_i| < \epsilon_0$.
Let now be $a$ any real number in $[a_1+\epsilon_0, a_2-\epsilon_0]$ and $\epsilon>0$. We can find an $N_\epsilon$ such that $\forall n \ge N_\epsilon:|x_{n+1}-x_n| < \epsilon$ (exists because of condition 1).
Because $I_1$ is infinite, we can find an $i_1 \in I_1$ with $i_1 \ge N_\epsilon$. Because $I_2$ is infinite, we can find $i_2 \in I_2$ with $i_2 > i_1$.
So we have
$$x_{i_1} < a_1+\epsilon_0 \le a \le a_2-\epsilon_0 < x_{i_2}.$$
Now it follows that at least one of $x_{i_1}, x_{i_1+1},\ldots,x_{i_2}$ must lie in the interval $(a-\epsilon,a+\epsilon)$. If either $x_{i_1}$ or $x_{i_2}$ do, we are done. Otherwise $x_{i_1}$ is to the left of that interval and $x_{i_2}$ is to the right of it.
Since $i_1 \ge N_\epsilon$, we know that the "step-length" $|x_{n+1}-x_n|$ is less than $\epsilon$ so the sequence cannot "step over" the interval $(a-\epsilon,a+\epsilon)$ of length $2\epsilon$, even if that interval is open.
So what have we shown? For an arbitrary point $a \in [a_1+\epsilon_0, a_2-\epsilon_0]$ and an arbitrary $\epsilon > 0$ we know that some $x_n \in (a-\epsilon, a+\epsilon)$. But that means that $a$ is a limit point of the sequence!
So contrary to our choice of $a_1,a_2$, the interval $(a_1,a_2)$ contained limit points. That means with finite $A'$, we must have $|A'|=1$.