OK, lets talk scan. First off, I have a TK-760 right next to me and my biggest gripe is the scan algorithm which slows the scan considerably no matter what I do. I miss seconds off of channel, much like what your complaint is about the 790. My opinion is the 790 does better on scan than a 760.
How does this all work? The simplest scan would be through channels programmed as CSQ (no QT) and no priority. All the radio has to do is change to a channel, lock its VCO, and check for channel activity (is the squelch broken?) then move on. It can do this pretty quick and to the user, scan would seem acceptable for a few dozen channels.
Now lets add QT to the receive on a channel. Now the radio stops on a channel that is unsquelched AND it has to decode the QT. A tone QT may take upwards of 50mS to decode, while a DQT is more like 150 mS. Only when the decoder decides the QT is false, does the radio move on. If you have ten channels active, all with DQT, it will take about 1.5 seconds to step through them all. Quite slower than just breezing by inactive channels. You can miss the first few words in this scenario.
Lets add one priority channel. During scan the radio (at the interval of lookback A) detours its normal scan sequence to check its priority channel (this could be during scan or stopped on a non-priority channel). This is the normal flup-flup-flup you hear on a non-priority channel as it checks the priority channel. If there is no activity on the priority channel, it quickly returns to scan (or receiving the non-pri channel) and continues with its lookback A time. If there is activity on the priority channel the check stops, checks the QT and if it is valid stays there and unmutes the speaker. If the QT is false, the radio sets a flag for the priority channel and reverts to lookback time B. You then go to scan (or non-pri) and the slower lookback B takes over, just looking for priority channel activity. If it goes back and sees it is still unsquelched, it assumes it is still the wrong QT and ignores it and scan (or non-pri) resumes. Only when it goes to the priority channel and sees no channel activity, the flag is reset and the priority check is now the faster lookback A. There is scan in a nutshell.
Now for your problem. The only thing that would slow the scan down from a reasonably fast rate to something slower would be the stopover to check QT. It would be slowed further if you use first and second priorities depending on how your squelch breaks. Also the non priority channels will slow on the activity. I guess what I'm trying to say is that if your squelch is too loose and noise tends to trip it, it forces the radio to stop and check QT (what does it know, it's dumb to what is a real transmission). Try a higher squelch setting and see if that helps. Or try this, disconnect the antenna from the 790 and try transmitting next to it on a portable on priority and non-priority channels. If the scan works well then, either your squelch is too low or you are in one hell of a co-channel congested area.