Sorry for taking a while to respond guys, I appreciate all your help! It's great to get so granular here.
@Lisa Shock @paulraphael Here is the latest base I've been using. All my bases are variations of the following with some tweaks for flavorings, the %s of ingredients are roughly the same.
100g - Heavy Cream
300g - 2% Milk
20g - Whey and casein protein powders (50/50 ratio, 10g each)
10g - Flavorings (sometimes a little molasses, vanilla/other extracts, cinnamon, or other flavor powders, etc.)
80g - Sugar blend (40g sugar, 20g stevia/erythritol blend, 15g polydextrose, 5g vegetable glycerin)
17g - 1 egg yolk (optional, I often go egg-less and haven't noticed any difference in texture)
2g - Salt
1g - Stabilizer blend (4:2:1 ratio of LBG, guar, lambda carrageenan). (~0.20% of the base by weight.)
0.20g - Polysorbate-80 (0.04% of the base by weight.)
This produces a mix of 8-9% fat / 9-10% NFMS / 18-19% other solids (incl. 16% sugars) / 36-37% total solids. All %s within the recommendations I've seen. Wet and dry are mixed separately, blended, sous vide cooked at 167F for 1 hour, re-blended and aged in the 37F fridge for typically ~24 hrs (overnight then churned next evening). I'm certain this produces 0% overrun because measured volume before and after churning is the same (in fact less after due to some losses from transferring containers). I know my bases are lower fat, but I should get something here. On the plus side, I have the flavors and freezing point suppression right where I want them, and I don't taste any ice crystals, so that's great! 😆
@ccp900 Your comments are helpful, thank you. Some of my random observations on aeration and viscosity. After first blending the base there is typically good aeration - sometimes I have difficulty submerging the bag in the sous vide because of this. After the mix cooks, it is slightly more viscous and blends into a beautiful-looking emulsion but with zero aeration. After the cooling/aging it gains more viscosity, but is still pourable. The difference in aeration pre- and post-cooking is what made me think the LBG is the culprit, since the cooking activates it. I am starting to think the protein denaturing and its effects on viscosity has a large impact as well. Going forward I will try reducing the stabilizers and proteins to lower viscosity and see what effects that has. It might gain some iciness but if it gives me more overrun I'll be super happy.