Blanch the cabbage: bring a large pot of salted water to the boil, big enough to submerge the head. Lower the whole uncored head in and boil 5-8 minutes until the outer leaves are bright green and bend without cracking. Lift into a colander and cool 15 minutes. Keep the water hot - the inner leaves will want another two minutes later.
Cook and wring the cauliflower: cook the cauliflower rice in a dry pan over medium heat 5-6 minutes until it stops steaming. Tip into a clean tea towel, cool a minute, and twist hard over the sink. What is left should feel almost dry. This step decides whether you get rolls or soup.
Peel and trim, then count: flip the head core-side up, cut each leaf free at its base and slide it off rather than pulling. Shave the thick rib flat or cut it out in a shallow V, or the leaf will snap along it. Count your usable leaves BEFORE portioning the filling - a head gives nine or ten good ones and a few tears, and committing to twelve portions first is how rolls end up overstuffed and burst.
Mix the filling: combine the beef, wrung-out cauliflower, almond flour, Parmesan, egg, onion, garlic, Italian seasoning, salt, pepper and parsley. Mix until just combined and no further - worked ground beef goes dense and rubbery. Keep the bowl chilled while you roll.
Roll: stir the sauce ingredients together and spread half over the base of a 9x13 dish. Put a portion of filling near the stem end of a leaf, shape it into a log, fold the sides in and roll it up. Sit each seam side down, packed snugly so they hold each other closed. Any surplus filling goes in a thin layer underneath. Pour the remaining sauce over.
Bake: 350°F, covered tightly with foil, for 60 minutes. Uncover and give it 15 minutes more to thicken the sauce and colour the tops. Check the middle of a roll with a thermometer - you want 160°F (71°C), because ground beef has its surface bacteria mixed all the way through. If the leaves are still tough at temperature, cover and give it another 15 minutes.