Separating near points
I have a simple solution for your problem, hope it helps. 
You might use a clustering method, as I explain in following:


Assume a certain window size (like $k*k$) as neighborhood.
for each and every pixel count number of bright (non-zero) pixels in the neighborhood.
Choose local maximums (pixels with most populated neighborhood), if there is other local maximums in that region, simply ignore them.
Select that pixel and its neighbors as a cluster. 


You might add some modifications to above simple procedure, like merging clusters which are too near to each other and indistinguishable.