I think I have made a mistake in my justification but I can't see where.
Let's assume that $f$ is a discontinuous additive function. From the basic properties of additive functions we know that $f$ is not continuous everywhere.
Let's take a sequence $(a_n) \subset \mathbb{Q},\;a_n \rightarrow0$. Then $$f(a_n) \nrightarrow f(0) \Leftrightarrow a_nf(1) \nrightarrow0 \Rightarrow f(1) \neq 0$$
Now let's take $(b_n) \in \mathbb{Q},\;b_n \rightarrow1$. Therefore we have $$f(b_n) \nrightarrow f(1) \Leftrightarrow b_nf(1) \nrightarrow f(1) \Rightarrow b_n \nrightarrow1, $$ where we used the fact that $f(1)\neq 0$. Contradiction.
And now I have a problem, because the above justification shows us that a discontinuous additive function doesn't exist. But we know that this cannot be.
Where is my mistake?
Just from the fact that $f$ is discontinuous at $0$ you cannot deduce that, for every sequence $(a_n)_{n\in\mathbb N}$ converging to $0$, the sequence $\bigl(f(a_n)\bigr)_{n\in\mathbb N}$ does not converge to $0$. That will have to occur only for some sequences converging to $0$. And it will not occur if $(a_n)_{n\in\mathbb N}$ is a sequence of rational numbers.