Io ti consiglio di fare delle funzioni sposta-su sposta-giù e non di dare la possibilità di scegliere direttamente la posizione. in questo modo rendi più semplice la gestione:

1. inserimento: va bene come hai fatto, al nuovo elemento dai come posizione count()+1
2. cancellazione: basta che decrementi di uno la posizione degli elementi che hanno
posizione > di quella che cancelli:
Codice PHP:
    UPDATE menu SET posizione posizione -
    WHERE posizione 
$posizione_elemento_da_cancellare 
3 sposta su : incrementi di uno la posizione del elemento che lo precede. decrementi la posizione dell'elemento da spostare
Codice PHP:
    UPDATE menu SET posizione posizione 
    WHERE posizione 
= ($posizione_elemento_da_cancellare -1);
    
    
UPDATE menu SET posizione posizione -
    WHERE id 
$id_elemento_da spostare
4 sposta giù: come sposta-su ma con i segni invertiti