You could add as many of these media queries as you like to increase the resolution of your tracking. Combine this with the min-height media query and you can get the absolute size of the view port.
That's still more finite than what JS can report, and can be easily broken by browser prefetching. (And could have performance implications that could drive users away.)
Whilst it's better-than-nothing fingerprinting, it is still far less effective than JS having access to the window and height properties directly.