The solution, which is essentially exact for large lattices, is just that the distribution function is a Gaussian. This is a universal result for the sum of any locally fluctuating quantity. It is therefore not very useful as a criterion for determining whether a given instantiation of on/off sites is random.
I take a torus, as Jaime suggested, and further, I replace your constraint of a fixed density with a grand-canonical system, where there is a probability p for having a particle at any given site. This is equivalent to what you are doing for large systems, and this is already essentially exact for a 10 by 10 lattice.
To compute the mean and variance of your quantity, you can use partition function methods. The probability of a site being occupied is p, and unoccupied is 1-p, so define a spin variable S on each site which takes the value 0 or 1, according to whether the site is occupied or unoccupied. If you make the weight of being unoccupied equal to 1, the weight of being occupied is $p\over 1-p$, so you can define an energy for being occupied using:
$$ e^J = {p\over 1-p} $$
Then write the partition function
$$ Z = \sum_{S} e^{J_x S_x} $$
Where $J_x$ is a local parameter at each site which you set to J at the end of the day, to reproduce your system, and the sum is over all configurations of spins chosen to be either 0 or 1 at each site
This partition function is independent at every x (this is the advantage of allowing each site an independent probability of occupation, instead of constraining the total number--- it is the same reason people use grand canonical methods in statistical mechanics), so it factorizes:
$$ Z = \prod_x (1 + e^J) = \prod_x {1\over 1-p} $$
Your quantity is
$$ M = \sum_{\langle x,y\rangle} S_x S_y $$
Where the brackets means sum over each nearest neighbor pair once and only once, and you evaluate this by taking the expectation value, which is very simple because it is an independent system:
$$ \langle M \rangle = \sum \langle S_x S_y \rangle = \sum \langle S_x\rangle \langle S_y\rangle = 2L^2 p^2 $$
That's the mean of M. You can also evaluate it formally using derivatives of the partition function with respect to $J_x$, but the final answer is very simple--- it's just an independent system, so the number of pairs is independent.
To find the variance of M, you subtract the mean of M and square, and the result is
$$ \langle M^2 \rangle - \langle M\rangle^2 = ( \sum (S_x - p)(S_y - p) )^2 = \sum_{\langle x,y\rangle} \sum_{\langle x',y'\rangle} (S_x - p)(S_y -p) (S_{x'} - p ) (S_{y'} - p) $$
And the expected value of the thing on the far right is zero unless the pair x,y is the same as the pair x',y', otherwise there is a zero expected value.
The resulting variance is
$$ 2L^2 (\langle S_x^2\rangle - \langle S_x\rangle^2)^2 = (p(1-p))^2$$
Where I have used the fact that the variance of the spin at one site is $p(1-p)$, which is a straightforward computation.
The mean and variance specify the Gaussian distribution uniquely. This answer is slightly wrong, inasmuch as you have fixed boundaries and a global number constraint, but it is exact in the large system limit.
This doesn't work for what you want, namely to determine if a bunch of points is random. Nothing works for this, really, because the notion of "random" is too vague--- you need to specify more about the alternative probability distribution it could be, some prior knowledge. If you are given a single configuration, for all you know, it could have been selected from the probability distribution which is just a delta-function on this one configuration.
But in practice, you can use the correlation function relations
$$ \langle S_{x_1} S_{x_2} S_{x_3} ... S_{x_n} \rangle = p^n $$
which should hold up to errors which are as the Gaussian width of the object on the left hand side, which gives you a good criterion for independent randomness on each site.