Dovrai dividerlo in 2 operazioni.
START TRANSACTION;
UPDATE table1 SET id = id + 1 WHERE id >= 3 order by id DESC;
INSERT INTO table1 (id, value) VALUES (3, 300);
COMMIT;
Nota che hai bisogno di order by nella dichiarazione di aggiornamento, quindi inizierà prima con gli ID più alti.
Un'altra idea sarebbe dichiarare id come decimal(10,1) e inserisci il valore 2.5 come id tra 2 e 3.