Here comes a proof in the general case. We first start with the following
Lemma: Let $-\varepsilon<y<0<x<\varepsilon$ and $N\in\mathbb{N}$.
Then there is a some $M\in\mathbb{N}$ and $z_{1},\dots,z_{M}\in\left\{ x,y\right\} $
with
$$
\left|\left\{ i\in\left\{ 1,\dots,M\right\} \,\mid\, z_{i}=x\right\} \right|=N
$$
and
$$
\left|\sum_{i=1}^{K}z_{i}\right|<\varepsilon\qquad\forall K\in\left\{ 1,\dots,M\right\} .\qquad\qquad\left(\ast\right)
$$
Proof: We first inductively construct an infinite sequence $\left(w_{n}\right)_{n\in\mathbb{N}}\in\left\{ x,y\right\} ^{\mathbb{N}}$
with $\left|\sum_{i=1}^{n}w_{i}\right|<\varepsilon$ for all $n\in\mathbb{N}$.
It is clear that the stated condition holds for $w_{1}:=x$, since
$-\varepsilon<x<\varepsilon$. Now, let $w_{1},\dots,w_{n}$ be already
constructed. Distinguish two cases:
We have $\alpha:=\sum_{i=1}^{n}w_{i}\geq0$. Then choose $w_{n+1}:=y$.
Then
$$
\varepsilon>\alpha>\alpha+y=\sum_{i=1}^{n+1}w_{i}=\alpha+y\geq y>-\varepsilon,
$$
i.e. $\left|\sum_{i=1}^{n+1}w_{i}\right|<\varepsilon$.
We have $\alpha:=\sum_{i=1}^{n}w_{i}<0$. Then we choose $w_{n+1}:=x$.
Similar to the above, it follows
$$
-\varepsilon<\alpha<\alpha+x=\sum_{i=1}^{n+1}w_{i}=\alpha+x\leq x<\varepsilon
$$
and hence $\left|\sum_{i=1}^{n+1}w_{i}\right|<\varepsilon$.
Now assume that $\left\{ i\in\mathbb{N}\,\mid\, w_{i}=x\right\} $
is finite. This implies $w_{i}=y$ for all $i\geq N_{0}$ with $N_{0}\in\mathbb{N}$
suitable. But this implies
$$
\sum_{i=1}^{N}w_{i}=\sum_{i=1}^{N_{0}-1}w_{i}+\sum_{i=N_{0}}^{N}w_{i}=\sum_{i=1}^{N_{0}-1}w_{i}+\left(N-N_{0}\right)y\xrightarrow[N\to\infty]{}-\infty,
$$
in contradiction to $\left|\sum_{i=1}^{N}w_{i}\right|<\varepsilon$
for all $N$.
Thus, $\left\{ i\in\mathbb{N}\,\mid\, w_{i}=x\right\} $ is infinite.
It is easy to see that this implies existence of $M\in\mathbb{N}$
with $\left|\left\{ i\in\left\{ 1,\dots,M\right\} \,\mid\, w_{i}=x\right\} \right|=N$,
so that we can set $z_{i}:=w_{i}$ for $i\in\left\{ 1,\dots,M\right\} $.
$\square$
Remark:
1. A completely similar argument show that we can choose $z_{1},\dots,z_{M}\in\left\{ x,y\right\} $
with
$$
\left|\left\{ i\in\left\{ 1,\dots,M\right\} \,\mid\, z_{i}=y\right\} \right|=N
$$
and such that $\left(\ast\right)$ still holds.
- For the above sequence, we also have
$$
\left|\sum_{i=K}^{M}z_{i}\right|=\left|\sum_{i=1}^{M}z_{i}-\sum_{i=1}^{K-1}z_{i}\right|\leq\left|\sum_{i=1}^{M}z_{i}\right|+\left|\sum_{i=1}^{K-1}z_{i}\right|<2\varepsilon\qquad\qquad\left(\square\right)
$$
for all $K\in\left\{ 1,\dots,M\right\} $.
By the argument given by @zhw., there is some $\delta>0$ and $C>0$
with $\left|\frac{f\left(x\right)}{x}\right|\leq C$ for all $x\in\left(-\delta,\delta\right)\setminus\left\{ 0\right\} $.
We will need this constant $C$ below.
First note that $f\left(0\right)=0$ is trivial (consider the sequence
$a_{n}=0$). Now, let us assume towards a contradiction that $f$
is not linear on any neighborhood of $0$. This implies that for every
$n\in\mathbb{N}$ there are $x_{n}\in\left(0,\frac{1}{n^{2}}\right)$
and $y_{n}\in\left(-\frac{1}{n^{2}},0\right)$ with
$$
\alpha_{n}:=\frac{f\left(x_{n}\right)}{x_{n}}\neq\frac{f\left(y_{n}\right)}{y_{n}}=:\beta_{n}.
$$
Indeed, if there where no such $x_{n},y_{n}$ for some $n\in\mathbb{N}$,
we could fix some $y_{n}\in\left(-\frac{1}{n^{2}},0\right)$ and would
get
$$
\gamma:=\frac{f\left(y_{n}\right)}{y_{n}}=\frac{f\left(x\right)}{x}
$$
for all $x\in\left(0,\frac{1}{n^{2}}\right)$. Likewise, fixing now
an arbitrary $x_{n}\in\left(0,\frac{1}{n^{2}}\right)$ and get
$$
\frac{f\left(y\right)}{y}=\frac{f\left(x_{n}\right)}{x_{n}}=\frac{f\left(y_{n}\right)}{y_{n}}=\gamma
$$
for all $y\in\left(-\frac{1}{n^{2}},0\right)$. All in all, this implies
$f\left(y\right)=\gamma\cdot y$ for all $y\in\left(-\frac{1}{n^{2}},\frac{1}{n^{2}}\right)$,
since we have $f\left(0\right)=0$. Thus, $f$ is linear on a neighborhood
of $0$ after all, a contradiction.
Note that (by choice of $C$ above), we have $\left|\alpha_{n}\right|\leq C$
and $\left|\beta_{n}\right|\leq C$. Let $\varepsilon_{n}:=\frac{1}{n^{2}}$
and choose $N_{n}\in\mathbb{N}$ with $N_{n}\geq\frac{1+C\varepsilon_{n}}{\left|\alpha_{n}-\beta_{n}\right|\left|x_{n}\right|}$.
Note that this is possible, since $\left|\alpha_{n}-\beta_{n}\right|>0$
and $\left|x_{n}\right|>0$. By the Lemma above, we find some $M_{n}\in\mathbb{N}$
and $z_{1}^{\left(n\right)},\dots,z_{M_{n}}^{\left(n\right)}\in\left\{ x_{n},y_{n}\right\} $
with
$$
N_{n}=\left|\left\{ i\in\left\{ 1,\dots,M_{n}\right\} \,\mid\, z_{i}^{\left(n\right)}=x\right\} \right|
$$
and
$$
\left|\sum_{i=1}^{K}z_{i}^{\left(n\right)}\right|<\varepsilon_{n}=\frac{1}{n^{2}}\qquad\forall K\in\left\{ 1,\dots,M_{n}\right\} .\qquad\qquad\left(\dagger\right)
$$
In particular (for $K=M_{n}$), we get
$$
\left|N_{n}x_{n}+\left(M_{n}-N_{n}\right)y_{n}\right|=\left|\sum_{i=1}^{M_{n}}z_{i}^{\left(n\right)}\right|<\frac{1}{n^{2}}.\qquad\qquad\left(\ddagger\right).
$$
Now define a sequence $\left(a_{k}\right)_{k\in\mathbb{N}}$ by
$$
a_{k}=z_{\ell}^{\left(K\right)}\qquad\text{ for }k=\sum_{i=1}^{K-1}M_{i}+\ell\text{ with }K\in\mathbb{N}\text{ and }\ell\in\left\{ 1,\dots,M_{K}\right\} .
$$
It is not too hard to see that this is well-defined. Furthermore,
the series $\sum_{k}a_{k}$ is convergent, since it is Cauchy; indeed, for $\sum_{i=1}^{T-1}M_{i}+p=t\geq k=\sum_{i=1}^{K-1}M_{i}+\ell$,
we have
\begin{eqnarray*}
\left|\sum_{n=k}^{t}a_{n}\right| & \leq & \left|\sum_{n=\ell}^{M_{K}}z_{n}^{\left(K\right)}\right|+\sum_{S=K+1}^{T-1}\left|\sum_{n=1}^{M_{S}}z_{n}^{\left(S\right)}\right|+\left|\sum_{n=p}^{M_{T}}z_{n}^{\left(T\right)}\right|\\
& < & 2\varepsilon_{K}+\sum_{S=K+1}^{T-1}\varepsilon_{S}+\varepsilon_{T}\\
& \leq & 2\sum_{n=K}^{T}\frac{1}{n^{2}}\leq2\sum_{n=K}^{\infty}\frac{1}{n^{2}}\xrightarrow[K\to\infty]{}0.
\end{eqnarray*}
By assumption on $f$, this implies convergence of $\sum_{n}f\left(a_{n}\right)$.
In particular, this series is Cauchy. But for $K\in\mathbb{N}$, we
have
\begin{eqnarray*}
\left|\sum_{n=1+\sum_{i=1}^{K-1}M_{i}}^{\sum_{i=1}^{K}M_{i}}f\left(a_{n}\right)\right| & = & \left|\sum_{n=1}^{M_{K}}f\left(z_{n}^{\left(K\right)}\right)\right|\\
& = & \left|N_{n}f\left(x_{n}\right)+\left(M_{n}-N_{n}\right)f\left(y_{n}\right)\right|\\
& = & \left|N_{n}\alpha_{n}x_{n}+\left(M_{n}-N_{n}\right)\beta_{n}y_{n}\right|\\
& = & \left|N_{n}\left(\alpha_{n}-\beta_{n}\right)x_{n}+\beta_{n}\left(N_{n}x_{n}+\left(M_{n}-N_{n}\right)y_{n}\right)\right|\\
& \geq & N_{n}\left|\alpha_{n}-\beta_{n}\right|\left|x_{n}\right|-\left|\beta_{n}\right|\cdot\left|N_{n}x_{n}+\left(M_{n}-N_{n}\right)y_{n}\right|\\
& \overset{\text{see }\left(\ddagger\right)}{\geq} & N_{n}\left|\alpha_{n}-\beta_{n}\right|\left|x_{n}\right|-C\varepsilon_{n}\\
& \geq & 1
\end{eqnarray*}
by choice of $N_{n}$, which shows that $\sum_{n}f\left(a_{n}\right)$
is not Cauchy and hence not convergent, a contradiction.
$$a_{3n-2} = \frac{1}{n^{1/3}}, a_{3n-1} = -\frac{1}{2n^{1/3}}, a_{3n} = -\frac{1}{2n^{1/3}}.$$
Then $\sum a_n$ converges (to $0$). Using $\sin x = x - x^3/6 + O(x^5),$ you can see $\sum \sin a_n = \infty.$
– zhw. Jun 20 '15 at 19:58