My understanding now is that RenderQueryResult is just the last thing that happens when the frame is presented by the GPU (which makes sense for render queries). If you see a lot of time going there that means the GPU spends all that time rendering the frame.
But sometimes it’s not just your game/app alone as other software can interfere. The simplest example would be looking at the stats while having your screen shared over a Skype call. Your frame rates will drop and you will see RenderQueryResult readings go up. It’s just that the GPU gets hijacked by Skype before it can report the frame fully rendered. What you then see is RenderQueryResult including the time spent by Skype fetching and compressing the frame buffer for its video streaming.
When you say you get 21 fps lower on the new hardware that kind of rings the bell. You might have something running alongside that incurs that GPU overhead. Also keep in mind that it’s better to analyze performance stats in a Standalone mode or (even better) a built/packaged game to prevent the UE4 editor from adding its own overhead to the stats.