I'm certainly not suggesting the above response is wrong, but the word spot, meaning a "small usually roundish mark of a different colour from the main surface" (OED) dates back to the 13th century, which long predates billiards/snooker. In the sense of "a locality of limited extent" (OED) it is of a similar age.
As it happens, the earliest recorded use of the phrase 'spot on' is as recent as 1920 and refers to hitting a military target...ie an exact locality. All-in-all, I'd guess the phrase is just an inversion of 'on the spot'.