One PWM signal per motor - allows for six motors per ATmega328p. All the other signals through a port extender.
That would at least work for the TB6612FNG which needs only one PWM signal per motor. The DRV8833 has four PWM inputs but I’m not too clear about this (never used that specific motor driver): do you really need PWM for both AIN1 and AIN2, or PWM on one of the two and a simple high/low signal on the other to switch on/off that motor? One PWM per motor should be enough.
Otherwise a PWM extension board may work. 16 channels for 8 (or 16( motors total.