I encountered a similar error once similar to this with a custom card that had different layers of sprites stacked (as in child sprites) to build the card. And sometimes some layers would just vanish. One comment brought me closer to explain the issue:
Sprites are sorted by their center point, so if the center point of a sprite in the corner happens to be closer to the camera than the center point of the card backing, it will sort in front. You might want to use a Canvas for this - then you can control the layering through canvas hierarchy order, without stacking up z offsets. (@DMGregory)
Since the particle system uses sprites as well, you might solve the problem by simply manipulating the sorting order. Adding a sorting groupsorting group on my GameObject did the trick for me in the end.