VGA resolution is at most
640x480 pixels; no-one says you have to do that many, not will you be ableto to, but lower resolutions are well within the capabilities of the AVR.
how come screens are usually larger than that, and, for example, the OS(windows) can still access every pixel, when it should send 640x480 pixels only
I'm not sure I understand that sentence.
Where are you going to store this image when the biggest Arduino has only 8KB of memory?
You don't necessarily need to store them anywhere all at the same time - you generate images on the fly.