  We prove that, when genus two curves $C/\mathbb{Q}$ with a marked Weierstass
point are ordered by height, the average number of rational points
$\#|C(\mathbb{Q})|$ is bounded. The argument follows the same ideas as the
sphere-packing proof of boundedness of the average number of integral points on
(quasiminimal Weierstrass models of) elliptic curves. That is, we bound the
number of small-height points by hand, the number of medium-height points by
establishing an explicit Mumford gap principle and using the theorem of
Kabatiansky-Levenshtein on spherical codes (this technique goes back to work of
Silverman, Helfgott, and Helfgott-Venkatesh), and the number of large-height
points by using Bombieri-Vojta's proof of Faltings' theorem.
  Explicitly, in dealing with non-small-height points we prove that the number
of rational points $(x,y)$ on $C_f: y^2 = f(x)$ satisfying $h(x) > 8 h(f)$ is
$\ll 1.872^{\mathrm{rank}(\mathrm{Jac}(C)(\mathbb{Q}))}$, which has finite
average by the theorem of Bhargava-Gross on the average size of $2$-Selmer
groups of Jacobians over this family. We note that our arguments in the
small-height and large-height cases extend to general genera $g\geq 2$, though
for medium points we need to use Stoll's bounds on the non-Archimedean local
height differences in genus $2$. For example, we prove that the number of
rational points $P\in C(\mathbb{Q})$ with $h(P)\gg_g h(C)$ on $C/\mathbb{Q}$
smooth projective and of genus $g\geq 2$ is $\ll
1.872^{\mathrm{rank}(\mathrm{Jac}(C)(\mathbb{Q}))}$, and that in fact the base
of the exponent can be reduced to $1.311$ once $g\gg 1$, though this is surely
known to experts (the difference is the use of the Kabatiansky-Levenshtein
bound in lieu of more elementary techniques).
