Se você está perguntando como atualizar uma tabela com base em uma subconsulta que encontra apenas os polígonos que têm um vizinho (ou seja, eles tocam outro polígono), o seguinte deve funcionar para você.
Update gemstat_simple5 gem set spread=1, time=2
FROM (
SELECT (b."GEM_NR")
FROM gemstat_simple5 as a,
gemstat_simple5 as b
WHERE ST_Touches(a.the_geom, b.the_geom)
AND a."GEM_NR" != b."GEM_NR"
AND a.spread = 1
) as subquery
WHERE gem."GEM_NR" = subquery."GEM_NR"
Observe que coloquei AND a."GEM_NR"