Suppose, $x$ is a limit point of the sequence then for all $\varepsilon$ we have $D_{\varepsilon}(x)\cap E \neq \emptyset$. Fix a $r$ with $D_{r}(x)\cap E \neq \emptyset$ and consider the sequence $r>r_{i}>r_{i+1}>0$ for all $i$ such that $D_{r_{i+1}}(x) \subset D_{r_{i}}(x)$ and define $$A_{i}=D_{r_{i}}(x)-D_{r_{i+1}}(x)\neq\emptyset$$ in such a way that $r_{i}$ converges to $0$ such sequence $r_{i}$ exist as $\varepsilon$ is arbitrary clearly
$D_{r_{i}}(x)\cap E \neq \emptyset$ for all $i$(from the defination of limit point only). Now choose a sequence $x_{i} \in A_{i}\cap E\neq\emptyset$(which can be garunted by choosing sequence $r_{i}$ in some optimal way). Hence we can construct a sequence $x_{i}$ that converge to $x$.
Algorithim to choose sequence $r_{n}$
$i)$ If $A_{i}\cap E\neq\emptyset$ choose $r_{i}$ and $r_{i+1}$ in a usual way.
$ii)$ $A_{i}\cap E=\emptyset$ then replace $r_{i+1}$ with $r_{i+2}$ and ckeck the above intersection is empty or not, if nonempty choose $r_{i+1}$ to be $r_{i+2}$, but if empty then replace $r_{i+2}$ with $r_{i+3}$ and repeat the process until some intersection is nonempty and suppose this process terminates at $r_{i+j}$ then choose $r_{i+1}$ with your $r_{i+j}$
$iii)$ After $r_{i+1}$ is choosen go for choosing $r_{i+2}$ in the same way as (ii) only difference is $A_{i+1}\cap E=\emptyset$, so keep procced until you choose $r_{i+2}$ with $A_{i+1}\cap E\neq\emptyset$,
$iv)$Thus select all of $r_{n}$ members.
The idea I am trying to say is, If $E$ is the union of regions(a region might contain only 1 point). But around $x$ there are infinitely many points in $E$. Construct ball around $x$ of different radius such that it forms infinitely many concentric circles(or balls or spheres) . By optimally picking the radius we can pick a point that is in $E$ and also in the region of difference of two distinct radius. The idea is to picking those radius such that every region of difference of two consecutive radius has a point that also in $E$