While "Technically" most Modern Displays do support 640x480., this will only be possible Natively on a 1440p Panel.
People tend not to realise that there are 2 Resolution Sets that a Display Panel will support.
480×270 > 960×540 > 1920×1080 > 3840×2160 (Set A)
342×192 > 684×384 > 1366×768 > 2732×1536 (Set B)
320×180 > 640×360 > 1280×720 > 2560×1440 (Set C)
I'm aware these are typically used as if they're a "Single Resolution" Set... but remember LCD are Individual LED Points., as opposed to a Masked Electron Beam; and LEDs have a Finite Colour Range... this means that "Odd Resolutions" will be a loss of detail or calculated (logical) colour blending as opposed to optical (perceptual) colour blending.
This is why Resolution Scaling outside of the Power-of-Two has a bigger impact and appears to be more "Out of Focus" and "Unnatural" than on an Analog Display.
I won't do a deep dive into Displays and Optics here., instead just know that for whatever the "Native" Resolution of the Display ... it will fit into one of the three above Resolution Sets that you want to ALWAYS stick to in order to retain control over the Visual Output.
Now strictly speaking Set B and C are "close enough" that you can get away with some minor Resolution Scaling., but Set A is roughly +30% Scaling.
What's important to keep in mind is that using Hardware Resolution Scaling is always going to be "Problematic"., so instead what you want to do is create Sprite Sheets with Pre-Calculated Scaling.
In this regard you can (if necessary) clean up any artefacts produced by the process to keep the Art Clean and Crisp for the Resolutions... as such you want to aim to create 2 Sprite Sheets., one for 1080p and the other for 720p.
I've listed the "Lowest" Resolutions above., so you can use those as a Base to work from., then simply 200 / 400% Scale with Nearest Neighbour; this will keep the Pixilation intended.
Of course it's also important to keep in mind that with the Higher Resolutions., you also have to account for the larger pixel movement... but that can actually easily be done via a simple logic of (Result = Result * Scaling) and then just set Scaling based upon which Base Resolution (720/1080) is being used.
That way you can work with 720p as you're baseline and simply have an offset for 1080p.
And I'd argue this is the best approach to take., because you can't guarantee which Display Type the End User will have.