Oneplus updater detects root and offers only the full download (around 1.3GB) even if actually need only around 70 MB if an actual OTA is downloaded. This outlines how to bypass that and install only the OTA.
The thing is you need to temporarily unroot.
Assuming you’ve installed Superuser in a systemless mode (by default it it so), your root part is in your bootloader and certain changes by the Superuser apk. The only changes in your /system is the busybox binary and bash (if you installed it).
So with a root explorer, delete busybox binary and all of its symlinks.
Go to chainfire superuser, and choose to unroot fully.
The phone will reboot.
Next, go to Settings>Apps
Wipe storage for this app.
Now check for updates. It should now download only the small update.
If you have TWRP, flash the stock recovery now, or check whether TWRP can flash the OTA (probably not).
Allow the update downloader to reboot to recovery to install the update.
Yea, I know the flow of words isnt smooth. I’m busy.