The 'Window size' project property is poorly named. It should be called the 'Viewport size'. (I don't think we will change it because other expressions and a lot of documentation refer to the same name.) It just sets how much of the layout you can see.
When the game is actually displayed at runtime, the size it ends up on your screen is the display size. For example you could have a 'window size' of 854x480 and use letterbox scale mode to display it at 1920x1080. In that case the viewport to the layout is 854x480 and the display size is 1920x1080.
In 'High quality' fullscreen mode, in practice only the display size affects performance. Note if you run a game in a browser window, you can resize the browser smaller and notice it's running faster. This is because the display size is smaller, so there's less GPU work. The project viewport is still the same (i.e., the project 'Window size' property has not changed, even though you resized the browser window. I do regret choosing that name for the project property!)
In 'Low quality' fullscreen mode, the game is rendered at the 'Window size' in project properties, and the result simply stretched up to fit the screen. Usually the stretch is fast and the performance impact can be ignored, so the display size is effectively the same as the viewport size. Since the viewport size is usually smaller than the display size, this improves performance.
In no case has the memory use changed. The viewport and display size do not affect the textures that are loaded to memory, which are always fully decompressed images at their original size they appear in the image editor.