IDLE SLEEP with TIMER0 ON wakes up my arduino

Use a flag. Have the WDT ISR set the flag. Put sleep_cpu() in a while loop that doesn't exit until the flag has been set.

I'm going to tell you this though, the watchdog timer SUCKS for accuracy. I found that out on a project I did for school. The frequency varies significantly with supply voltage and temperature, so it should not be used for anything requiring any degree of accuracy.

If you need accuracy, you can use Timer2 with an external 32.768 kHz watch crystal to keep time in Power-save mode.