The erase time is very different between devices. One big difference is the technology the flashes are made. In general larger Flashes are mostly in newer technologies. Most AVRs are build in newer techologies than most 51s, therefore the erase time is usually shorter.
Whether USB or SPI programming (did you mean SPI or ISP through UART?). is faster depends on the software driver. The maximum data rate is an indication how fast it CAN BE DONE, not how fast it actually is.
Between UART and USB, it would need a strange USB program to be slower than a UART. Between USB and SPI it depends on the clock of the SPI, e.g. some ARM7 devices clock the SPI with 30 mbit/s and it has a lot less overhead than USB.
Cheers, Bob