Sorry for the late response, but my day job really sucked in all the time and energy I had so I couldn’t properly try this all out before yesterday.
I’ve upgraded to 2022.3.61f1 and luckily nothing broke. I’ll stick to 2022.3 for now, I have to concentrate on development a bit now 
As for the video, yeah, I think it got messed up when I compressed it - the blur kicks in during the Unity logo display at the beginning, though the exact moment is lost in the compressed version.
Now, regarding the initial problem - I didn’t manage to get it to work the way I want, but I figured out what is going on, sort of. Furthermore, I am not even sure my initial idea was all that good anyway.
For diagnostics I used this printout in my debug console:
var currentRes = $"{Screen.currentResolution.width}x{Screen.currentResolution.height}";
var mainWindow = $"{Screen.mainWindowDisplayInfo.width}x{Screen.mainWindowDisplayInfo.height}";
var fullScreen = $"{Screen.width}x{Screen.height}";
_commandHistory.Enqueue($"CurrRes {currentRes} | MainWin {mainWindow} | FullScr {fullScreen}");
I built the game for Windows in 1280x720 to start in full screen. When I got in, I called the cmd above and got full screen resolution as 1280x720, which was what I expected. However, if I would ALT-Enter to toggle the full screen mode, or if I would minimize/maximize the window, or if I would ALT-Tab to something else, the full screen resolution would change to 1920x1080 which was my screen’s native resolution.
On MacOS everything was fine since at 1280x720 the blur is not really visible in any case.
Then I built a script with which I could flip resolutions between 320x180, 640x360 and 1280x720 via a keyboard button, by means of Screen.SetResolution method. When I used it to switch to 320x180 on Windows I got the exact same blur as on Mac, which makes sense since the above example showed that the resolutions are tempered with on minimize/maximize, full screen toggle or changing window focus.
As to why that does not happen in the editor, I think it is due to Unity editor being an app that wraps around the game, i.e. the editor itself is using the display’s native mode, and then within it the game is rendered, thus bypassing the OS settings which blur the low res image when the game is run natively.
So there you have it. I wanted to force low resolution so as to get “true” retro feel, i.e. avoid any sub-pixel artifacts in the game which is mostly visible with particle systems. While that would be cool, what I also got was some not-as-pleasant artifacts such as jagged background scrolling and such, and for that reason I decided to build in and force 1280x720. As to how I did that, here is the code:
using UnityEngine;
public class ResolutionCtrl : MonoBehaviour
{
#region State
private bool HasScreenSizeChanged => Screen.width != _lastWidth || Screen.height != _lastHeight;
private bool HasFullScreenChanged => Screen.fullScreen != _lastFullScreen;
private bool HasFocusedChanged => Application.isFocused != _lastFocus;
public int CurrWidth => WIDTH;
#endregion
#region Constants
private readonly int WIDTH = 1280;
private readonly int HEIGHT = 720;
#endregion
#region Fields
public int _currModifierIdx = 2;
private int _lastWidth;
private int _lastHeight;
private bool _lastFullScreen;
private bool _lastFocus;
#endregion
private void Start()
{
_lastWidth = Screen.width;
_lastHeight = Screen.height;
_lastFullScreen = Screen.fullScreen;
_lastFocus = Application.isFocused;
}
private void Update()
{
#if !UNITY_EDITOR
if (!HasWindowStateChanged())
return;
Screen.SetResolution(WIDTH, HEIGHT, Screen.fullScreen);
#endif
}
private bool HasWindowStateChanged()
{
var changed = false;
if (HasScreenSizeChanged)
{
changed = true;
_lastWidth = Screen.width;
_lastHeight = Screen.height;
}
if (HasFullScreenChanged)
{
changed = true;
_lastFullScreen = Screen.fullScreen;
}
if (HasFocusedChanged)
{
changed = true;
_lastFocus = Application.isFocused;
}
return changed;
}
}