What is the proper way to update a portable Blender installation while keeping user settings?
You should not replace the whole 2.## folder version with a previous one.
In a best case scenario that will not only roll back any updated versions of the addons the new version may bring, but also override any new presets, builtin Python scripts, UI scripts and bundled Python versions along with your personal config, essentially rolling Blender back to the previous installed version.
Worst case it will likely completely break your Blender installation, especially between major versions, as old scripts and presets may be incompatible with new APIs and binary file changes.
You should only copy the Config folder inside the 2.## which should contain your bookmarks file, startup.blend and userpref.blend.
Alternatively you can use Blender command line launch parameters to achieve a fully functioning portable installation with a proper dedicated folder for user data and addons.
Blender supports several launch variables, a few of them are BLENDER_USER_CONFIG and BLENDER_USER_SCRIPTSwhich allow overriding the default folders for user configuration (where startup files are saved) and the folder for users scripts and addons, where third party installed addons, presets, keyconfigs and scripts are installed.
The trick is to launch Blender from a batch file that sets this to your custom desired location.
Here is an example, in a plain text editor like Notepad paste the below lines of code and save them to the same folder as Blender.exe, give it a any name like &quot;Blender_Portable&quot; but make sure you specify the file extension as .bat not .txt.
SET BLENDER_USER_CONFIG=%~dp0Portable_Data\Config
SET BLENDER_USER_SCRIPTS=%~dp0Portable_Data\Scripts
    
if not exist %BLENDER_USER_CONFIG% mkdir %BLENDER_USER_CONFIG%
if not exist %BLENDER_USER_SCRIPTS% mkdir %BLENDER_USER_SCRIPTS%
    
start Blender.exe

It should be setup in such manner that the file system would look like.
Blender Portable
 └Portable_Data
 │ └Config
 │ └Scripts
 └Blender.exe
 └BlenderPortable.bat

Adapt to your own needs, you may want Blender installation contained in an independent subfolder separate from the rest of the setup.