Dedicated 6 channel PWM controller
You already have this: 



There's no need to add another chip.  As Olin and Steven stated, these hardware peripherals will probably use comparable CPU to an external peripheral.  You do not risk typing your CPU up by employing hardware peripherals. 

More importantly, floating point on an AVR is your bottleneck, not the PWM. Consider choosing a microcontroller with floating point hardware, adding a coprocessor with floating point, changing to a processor which has floating point and 6 PWM channels (likely a DSP  or ARM9 that will be much more complex and expensive  than your Atmega88), or (preferrably) modifying your algorithms to be faster and use fixed point arithmetic.  Speeding up the PWM from 0.2% to 0.1% (if using an external PWM IC is actually that helpful) won't help if your floating point algorithms are taking 200% of your CPU time.