The limit of 30 for OCR2A-OCR2B is probably due to the time for ISR call, the storing and retrieving of registers, ect.
to get jitter-free timer output
I repeat that to get jitter-free timer output you have to use the hardware timer output. Not an ISR.
How to view assemblyhttp://rcarduino.blogspot.com/2012/09/how-to-view-arduino-assembly.htmlDuane Brcarduino.blogspot.com
... hardware timer output is surely a good idea ...[but] I have to update a DAC ...
...For something like frequency synthesis, where timing accuracy matters, this method is superior to updating the DAC output from inside an ISR. There's no problem with interrupt latency, and no chance that the timer will fire late because some other interrupt was being serviced at the time. ..."