Tente isto:
UPDATE table1
SET a = t2.a, b = t2.b, .......
FROM table2 t2
WHERE table1.id = t2.id
Isso deve funcionar na maioria dos dialetos SQL, excluindo o Oracle.
E sim - é muita digitação - é a maneira como o SQL faz isso.
UPDATE table1
SET a = t2.a, b = t2.b, .......
FROM table2 t2
WHERE table1.id = t2.id