STM32F303K8 Nucleo Restart ADC For Continuous Scans (Using Interrupt?) STM22CubeMX
I have managed to find a solution. Although as PeterJ_01 mentions, this may just be a workaround to a much larger problem.

The cause of my problem appears to be that I had the cycle time set to 61.5 cycles per channel. Which seems to be too fast when doing 8 conversions. My suspicion was that I was saturating the µC. Which is why restarting only one ADC in the callback would work. but not both. But I guess it is something deeper than that.

I have upped the cycle time to 601.5 cycles and it all works!

Also, I realize that I do not need ADC interrupts enabled to restart the conversion. Since the DMA automatically attaches HAL_ADC_ConvCpltCallback to the conversion complete DMA interrupt.