The H7 Plus uses a different camera. The OV5640 has a massive resolution.
If you want the OV5640 to run faster you have to use this method: sensor — camera sensor — MicroPython 1.13 documentation
Here’s the issue:
The OV5640 has a ton of pixels. 5 million of them. The camera SoC runs at 1 GHz almost internally to sample and average all those pixels into the lower resolution for you. The OV7725 has 0.3 MP and runs much slower to do the same thing.
Since the OV5640 has so many pixels it takes it longer to output an image than the OV7725. Now, using set windowing you can crop the number of pixels the OV5640 has to work on. This reduces it’s work load making it A LOT faster. However, this means the camera Field of View is cropped. This is why we don’t have this enabled by default. If you want speed you have to trade field of view with the OV5640. But, it has more resolution.
If you use a different lens on the OV5640 then you will get that field of view back.
Anyway, you have to do decide what tradeoff you want to make.
It is not cut and dry that the OV5640 is better than the OV7725. The OV5640 takes higher res pictures. But, it is not strictly better than the OV7725 which has larger pixels and a faster FPS for lower resolutions. If OmniVision had made pixels in the OV5640 able to combine with each other in silicon without a DSP averaging them then the sensor would be strictly better. But, it does not do that internally.