NTSC provides 227.5 colour cycles per line; PAL is very close to 283.75. In both cases, the visible area is around 80% of the line, but most home computers had a much bigger border than that — e.g. (of those I know offhand) the Acorn machines paint for 40µs, which is 62.5% of the line; the 48kb Spectrum paints for 128/224ths, which is around 57%; over in NTSC land the Atari 2600 paints for close to 70% of a line.
There's a useful caveat though: colour cycles per line is a corollary of the normal line period and the colour subcarrier frequency. Since TVs apply some tolerance in timing you can do what at least both Atari and Apple did in NTSC: provide a slightly longer than usual line, such that per the colour subcarrier frequency it's exactly 228 colour cycles long. That way you can paint a decent number of individual colour pixels and have the effects of colour banding be uniform down the screen and from frame to frame.
In Atari's case at least, that amounts to populating 160 individual colour cycles†.
If anybody had done the same thing in PAL then they'd probably have stretched to a line long enough to contain 284 colour cycles, and painted between 170 and 200 of them. Though the phase alternating part of PAL means that you wouldn't get the same consistency vertically, which is presumably why nobody did. The PAL Ataris just end up no longer being aligned with the colour subcarrier.
That all being said, if you're asking about horizontal resolution in the abstract then don't discount the option of just doing it in black and white. Colour TVs are supposed to suppress any decoded colours if there was no colour burst — that's going back to the transition period when some channels were broadcasting in colour and some weren't, and you didn't want false colours showing up all over the place on those that weren't and which also weren't pre-filtering their signal. On some TVs that might cut the low-pass filter out of the loop. If so then you can do a lot more pixels and expect them to show up cleanly.
Ditto if displaying on a cheap black and white TV as the colour subcarrier frequencies were picked so that a combination of phosphor persistence, persistence of vision and psychology make the colour part of the signal hard for a human being to detect even if a pre-colour TV, with no concept of distinguishing the colour part of the signal, is tuned to a colour broadcast. Therefore you could send one of those a relatively high-frequency signal and expect it to be rendered without deliberate filtering: as a rule of thumb, you can multiply the horizontal resolution by four††.
The Apple II is a machine that will omit a colour burst in text mode to get that benefit on compatible televisions. Some very old machines, such as the ZX80 and ZX81, are purely monochrome so don't output a colour burst at all. ZX BASIC could well look better on a ZX81 than a ZX Spectrum.
So, the numerical answers: 160–200 colour if you want the nicest possible artefacting, 320–400 if you don't mind some artefacts, more like 640 or so if you're in black and white and are lucky with the TV set.
† actually the Atari outputs either 160 or 152 pixels per line because the way it handles object movement means that it sometimes omits the left-hand eight pixels. You'll have seen it in many titles as short black horizontal lines on the left margin that move around as the sprites do.
†† the hand-waving version: if the colour subcarrier is n Hz then per Nyquist you need to capture 2n samples fully to describe it, but colour in NTSC and PAL is encoded in quadrature so there are actually two parts to the colour signal encoded exactly out of phase, which makes 4n. But more persuasively, sampling at four times the colour subcarrier is the official industry recommendation for digital preservation of archive composite video.