Can you have mesh particles that don’t intersect?
If you don't want them to intersect, then yes you should be using rigid bodies. 

In the particle system settings, change the start and end frame 1 and adjust the number of particles to fit your scene. That makes all the particles spawn at the same time. Then go into the modifiers tab of the emitter object and click convert. Now each particle should be a separate object. 

Then just create a rigid body sim and cache it out.