While I agree with you that using actual data is more reliable than the relatively inaccurate estimate, it still leaves a lot of room for inaccuracy. Your method only provides meaningful data if there are fewer than 1000 possible results. Any query with greater than 1000 possible results will have the same number, 1000 (minus omitted results).
The 602 number you reference in your post does not represent the number of “sites” that are relevant. Google does not index websites, they index individual pages. That 602 number is the number of pages that are returned, not the number of pages indexed and not the number of websites. It’s possible that in some cases more than half of those pages could be from a single website and the bulk of those pages could all be from just a few websites.
Also, your method may exclude allintitle: results which are also a strong indicator of the number of competitors.
Finally, the most important thing to consider is that these methods are only indicators of the number of competing pages, not the strength of competition. You could have a large number of competing pages but relatively weak competitors for the top ten positions in SERP. Conversely, you might have a relatively small number of competing pages, but with massive competitive strength that will make it very difficult to rank on the first page of search results.