Problem on abelian group

Let $G$ be an abelian group, and $\Phi:G\to \mathbb{R}$ is a function with the following property: $$\forall a,b\in G,~~ |\Phi(a+b)-\Phi(a)-\Phi(b)|<c$$

The problem asks to prove the existence of homomorphism, $\Phi^*$, where $\Phi^*:G\to\mathbb{R}$ and $$\forall a\in G, |\Phi(a)-\Phi^*(a)|<c$$

If such a homomorphism $\Phi^\ast$ exists, then we have

$$\lvert \Phi(na) - \Phi^\ast(na)\rvert < c \Rightarrow \left\lvert \frac{1}{n}\Phi(na) - \Phi^\ast(a)\right\rvert < \frac{c}{n}$$

for all $n \in \mathbb{Z}^+$, in particular

$$\Phi^\ast(a) = \lim_{n\to \infty} 2^{-n}\Phi(2^na).$$

Let's define $\psi_n(a) := 2^{-n}\Phi(2^na)$.

First, we show the existence of $\lim\limits_{n\to\infty} \psi_n(a)$ for all $a \in G$:

$$\lvert \psi_{n+1}(a) - \psi_n(a)\rvert = 2^{-(n+1)} \lvert \Phi(2^{n+1}a) - 2\Phi(2^na)\rvert < 2^{-(n+1)}c,$$

hence $\sum \lvert \psi_{n+1}(a) - \psi_n(a)\rvert < \infty$, whence $\bigl(\psi_n(a)\bigr)_{n\in\mathbb{N}}$ is a Cauchy sequence, and

$$\Phi^\ast(a) := \lim_{n\to\infty} \psi_n(a)$$

is well-defined, and, since $\psi_0 = \Phi$, we have

$$\lvert \Phi^\ast(a) - \Phi(a)\rvert \leqslant \sum\limits_{n=0}^\infty \lvert \psi_{n+1}(a) - \psi_n(a)\rvert < \sum_{n=0}^\infty 2^{-(n+1)}c = c.$$

Now let's see that $\Phi^\ast$ is a homomorphism:

$$\lvert \psi_n(a+b) - \psi_n(a) - \psi_n(b)\rvert = 2^{-n} \lvert \Phi(2^n(a+b)) - \Phi(2^na) - \Phi(2^nb)\rvert < 2^{-n}c,$$

from which we deduce

$$\Phi^\ast(a+b) = \lim_{n\to\infty}\psi_n(a+b) = \lim_{n\to\infty} \psi_n(a) + \psi_n(b) = \Phi^\ast(a) + \Phi^\ast(b).$$