It can be solved by replacing the inner cotton. For cost reasons, the size of the helmet is usually determined by the inner cotton. It is impossible for manufacturers to produce different sizes of shells according to different sizes, because the cost of molds is terrible. So they use cotton with different thicknesses to determine the size of the helmet, such as M, L, XL, and the thickness difference of each size is 0.5cm.
If you can't buy thinner inner cotton, you can diy it yourself, take apart the cheek pads on both sides, pick up the thread, then take out the sponge inside, make it thinner, sew it back, and the helmet will become larger in size.