jffs is a portion of the onboard flash memory mounted as a directory that you can read and write to. The firmware doesn't need it and sets it aside for this purpose. This area is where a lot of scripts are stored. The firmware also has hooks to expand customization, and if those hooks are enabled the firmware looks for them in /jffs/scripts.
Backing this up and restoring it is a convenient way of copying those files. When you do a dirty flash you leave this jffs file system intact. On some occasions an upgrade to the firmware will change how much of the onboard flash memory is set aside, and then you can run into corruption problems. It isn't always the case that you can't use the backup though.
The usb stick is flash memory also mounted but obviously not onboard. Some of the addon scripts in /jffs/scripts point to files on the usb stick, saving memory in /jffs where the addon is built around entware or otherwise is relying on the presence of a usb stick.
Nvram variables customize the firmware. Backing up the configuration backs these up. Sometimes the firmware adds new nvram variables, or stops using old nvram variables. A dirty flash leaves the old variables intact, and this can cause problems. But it isn't always the case that you can't use the backup configuration. The nvram scripts try to limit this by only doing some restores (as
@ColinTaylor nicely put it, a curated list).
One reason upgrades fail is because the system doesn't have enough memory to do the upgrade. All this stuff about unmounting the usb stick, removing it, rebooting the router, disabling addon scripts etc. is a way of putting the router in a state where no memory is being used by the stuff we load up, giving the system enough memory to do the job. Unmounting is usually enough because diversion and scribe (which can use a lot of memory) exit and release the memory they have been using. Not all scripts do that though. Disabling the addon scripts and rebooting means none of the scripts ever get started. But this still amounts to a dirty flash, since the nvram and jffs sections remain.
One thing you don't want to do is yank the usb drive without unmounting it. Among other things, you likely have a swapfile in use. If you do your steps #2 and #4, you don't need to do #3, but if you are going to do #3 unmount it first.