[Xiaomi Poco X3 Pro] Faruk88:
No, the firmware files are not part of the system image (or the vendor partition). They're separate binary files. You can check it out if you download the firmware update ZIP file from here: https://xiaomifirmwareupdater.com/firmware/vayu/stable/V13.0.5.0.SJUMIXM/

The firmware update ZIP file is identical to the OTA update ZIP available for download from the Xiaomi server, except the file system images have been removed. You can compare yourself if you would like: https://bigota.d.miui.com/V13.0.5.0.SJUMIXM/miui_VAYUGlobal_V13.0.5.0.SJUMIXM_7cc0b9ac86_12.0.zip

If you extract the firmware update ZIP (or the OTA update ZIP from Xiaomi), you can see the firmware files in the "/firmware-updates" directory. And in "/META-INF/com/google/android/updater-script" you can see how the firmware files are installed. It writes them to some special block devices on the file system. These aren't "real" files, so even if you install a newer build of LineageOS, it will not overwrite/revert to the previous firmware.

I looked at the files listed in the link you shared, but they do not include any of the firmware files from the firmware update ZIP file. Here is the updater-script file from it, for reference:

show_progress(0.200000, 10);

# Generated by Xiaomi Flashable Firmware Creator
# 2022-07-22 12:45:53.026224 - xfu

ui_print("Flashing Normal Firmware ...");
getprop("ro.product.device") == "vayu" || abort("E3004: This package is for \"vayu\" devices; this is a \"" + getprop("ro.product.device") + "\".");
ui_print("Target: Xiaomi/vayu_global/vayu:12/RKQ1.200826.002/V13.0.5.0.SJUMIXM:user/release-keys");
package_extract_file("firmware-update/cmnlib64.mbn", "/dev/block/bootdevice/by-name/cmnlib64");
package_extract_file("firmware-update/NON-HLOS.bin", "/dev/block/bootdevice/by-name/modem");
package_extract_file("firmware-update/cmnlib.mbn", "/dev/block/bootdevice/by-name/cmnlib");
package_extract_file("firmware-update/hyp.mbn", "/dev/block/bootdevice/by-name/hyp");
package_extract_file("firmware-update/BTFM.bin", "/dev/block/bootdevice/by-name/bluetooth");
package_extract_file("firmware-update/tz.mbn", "/dev/block/bootdevice/by-name/tz");
package_extract_file("firmware-update/aop.mbn", "/dev/block/bootdevice/by-name/aop");
package_extract_file("firmware-update/xbl_config.elf", "/dev/block/bootdevice/by-name/xbl_config");
package_extract_file("firmware-update/storsec.mbn", "/dev/block/bootdevice/by-name/storsec");
package_extract_file("firmware-update/uefi_sec.mbn", "/dev/block/bootdevice/by-name/uefisecapp");
package_extract_file("firmware-update/imagefv.elf", "/dev/block/bootdevice/by-name/imagefv");
package_extract_file("firmware-update/qupv3fw.elf", "/dev/block/bootdevice/by-name/qupfw");
package_extract_file("firmware-update/abl.elf", "/dev/block/bootdevice/by-name/abl");
package_extract_file("firmware-update/dspso.bin", "/dev/block/bootdevice/by-name/dsp");
package_extract_file("firmware-update/devcfg.mbn", "/dev/block/bootdevice/by-name/devcfg");
package_extract_file("firmware-update/km41.mbn", "/dev/block/bootdevice/by-name/keymaster");
package_extract_file("firmware-update/xbl.elf", "/dev/block/bootdevice/by-name/xbl");
package_extract_file("firmware-update/cmnlib64.mbn", "/dev/block/bootdevice/by-name/cmnlib64bak");
package_extract_file("firmware-update/cmnlib.mbn", "/dev/block/bootdevice/by-name/cmnlibbak");
package_extract_file("firmware-update/hyp.mbn", "/dev/block/bootdevice/by-name/hypbak");
package_extract_file("firmware-update/tz.mbn", "/dev/block/bootdevice/by-name/tzbak");
package_extract_file("firmware-update/aop.mbn", "/dev/block/bootdevice/by-name/aopbak");
package_extract_file("firmware-update/xbl_config.elf", "/dev/block/bootdevice/by-name/xbl_configbak");
package_extract_file("firmware-update/uefi_sec.mbn", "/dev/block/bootdevice/by-name/uefisecappbak");
package_extract_file("firmware-update/qupv3fw.elf", "/dev/block/bootdevice/by-name/qupfwbak");
package_extract_file("firmware-update/abl.elf", "/dev/block/bootdevice/by-name/ablbak");
package_extract_file("firmware-update/devcfg.mbn", "/dev/block/bootdevice/by-name/devcfgbak");
package_extract_file("firmware-update/km41.mbn", "/dev/block/bootdevice/by-name/keymasterbak");
package_extract_file("firmware-update/xbl.elf", "/dev/block/bootdevice/by-name/xblbak");

show_progress(0.100000, 2);
set_progress(1.000000);

The official update from Xiaomi that I linked above does the exact same thing, and THEN it patches the system partition and vendor partition and then does a few more things. Here is the updater-script from Xiaomi for reference:

Spoiler content hidden.

So basically the firmware update is something completely separate from the blobs that are in the vendor partition.

I have zero freezes on both phones now, after updating the firmware, but I did also turn off smooth display... I may try re-enabling smooth display to see what happens though. On my first phone I did both those things at the same time (update firmware and disable smooth display), but on the second phone I disabled smooth display first and it didn't eliminate the freezes, but then when I also updated the firmware it eliminated the freezes.

Edit: Enabled Smooth Display on both phones. Hours later, got an approximately 5-second freeze on one of them. I guess all I can say for 100% certain is that neither phone experienced any freezing with both updated firmware and smooth display disabled. But doing only one of those things (just updating firmware, or just disabling smooth display) was not enough on my end.