(Note, I am more of a physicist than a philosopher)
Particles not only have shape, they have two shapes!
The first shape is the wave function of the particle. Quantum particles are spread out all over the universe, but they usually have places where they are more present than elsewhere. The shape of these places can be said to be the shape of the particle. Note that these shapes are not in any way fixed.
For small particles, like electrons, this shape is much larger than the actual size of the particle.
Larger particles, like neutrons, have a size. If you observe them closely, their wave functions can be smaller that this size.
But what does it mean for a neutron to have a size? It means that if you let two neutrons collide at a low speed they will "bump" at this distance, behaving very much like two billiard balls. (At high speed, they smash and break)
Size gives particles a second shape. As far as we can tell, this shape is always a sphere. Two cubes would meet at different distances depending on if they meet corner to corner or side to side. We have seen no such effects. (I have no idea how accurate these measurements are)
Photons (light particles) are bosons (integer-spin particles). Bosons do not bump off each other, so there are no reason assign a size to them other than their wave function.
It is possible that neutrons and other large particles have a size because they consist of parts, quarks. These parts like to keep their distance, and that includes keeping the distance to other neutrons.
It is unknown if quarks themselves have a size in the "bump" sense. It is very hard to experiment on quarks.