I didn't think about the precompact group topologies, but the statement $|\hat G|=2^{2^{|G|}}$ is incorrect. A character of $G$ is a map from $G$ to the complex numbers. Hence there are no more than $(2^{\aleph_0})^{|G|}$ characters. If $G$ is infinite,
then $(2^{\aleph_0})^{|G|}=2^{|G|}$ and not $2^{2^{|G|}}$.
But I don't understand how you get the equation $|\hat G|=2^{2^{|G|}}$ from the claim you mention. $2^{2^{|G|}}$ is an upper bound for the number of Hausdorff precompact group topologies on $G$. The character group is of size at most $(2^{\aleph_0})^{|G|}$,
i.e., $2^{|G|}$ for infinite $G$.
But $\hat G$ can have up to $2^{|\hat G|}$ subgroups.
So for infinite $G$ we arrive at an upper bound of $2^{2^{|G|}}$ for both the number of subgroups of $\hat G$ and the number of Hausdorff precompact group topologies on $G$.
Nothing wrong there.
Edit: I went through the literature concerning this question. The claim is proved in [W. W. Comfort and Kenneth A. Ross, Topologies induced by groups of characters, Fundamenta Math., 55 (1964), 283-291]. Another good read is [Bernahu, Comfort, Reid, COUNTING SUBGROUPS
AND TOPOLOGICAL GROUP TOPOLOGIES, Pacific Journal of Mathematics, Vol. 116, No. 2, 1985], where it is shown, among other things, that every uncountable abelian group $G$ has $2^{|G|}$ subgroups.