Ciao infox,
dovresti fare un'analisi più approfondita ed eliminare man mano i dubbi che hai.
Suggerimenti su come procedere:
Annota su un foglio di calcolo in colonna gli url da redirezionare (che dovrebbero essere redirezionati).
Per ciascuna riga, e quindi per ciascun url da redirezionare, usa la colonna a destra per inserire l'url "teorico" di destinazione, cioè quello che vorresti fosse l'url di atterraggio dopo il redirect.
Testa le righe una ad una, ovvero prova gli url della prima colonna uno a uno, facendo un'ispezione con Chrome o usando un qualunque altro strumento che ti fornisca la risposta dell'header e quindi
ti dica esattamente cosa è successo; in base alla risposta, annota nella colonna a destra (la terza) l'url "reale" di destinazione, anche se diverso da quello atteso.
A questo punto hai un elenco con url di partenza, url teorico di destinazione e url reale di atterraggio: questi ultimi due devono essere uguali. Colora diversamente le righe a seconda che nelle ultime due colonne gli url siano uguali e diversi, o comunque usa un sistema di marcatura per evidenziare le sole righe sulle quali devi intervenire, che sono poi quelle che hanno url diversi in seconda e terza colonna.
Nota bene che questi url potrebbero essere "simili" nel senso che un cospicuo numero di righe potrebbe avere url diversi in seconda e terza colonna per la stessa causa, ad esempio per un'istruzione che incide su un determinato pattern, come una regola sullo slash finale. Il foglio di calcolo ti aiuta a capire l'esistenza di questi pattern: devi aguzzare la vista e riconoscere eventuali analogie tra gli url per i quali si verifica il problema, questo faciliterà la ricerca della soluzione.
Per quanto riguarda la ricerca delle cause dei redirect indesiderati, a partire dalla risposta per l'url redirezionato controlla:
le regole inserite nell'estensione seo sef, in questo caso sh404sef, ma vale per qualunque altra estensione o plugin
la presenza di eventuali altre estensioni che potrebbero incidere sul redirect
le regole inserite nell'htaccess
la presenza di eventuali istruzioni inserite nei file del template e/o in moduli html custom o in qualunque atro posto che permetta l'esecuzione di codice.
I due grassetti che ho inserito servono a evidenziare il fatto che devi essere certo di cosa sia accaduto, non fidarti della pagina che vedi ma leggi la risposta. Quel "a volte" che hai inserito nei tuoi punti 3) e 4) devi eliminarlo, nel senso che devi capire quando e perché accade. Sappi che a volte dns e browser fanno strani scherzi...
Ovviamente più sono le pagine e più avrai bisogno di tool che automatizzino il processo.
Se cerchi tool che ti possano aiutare qui trovi tutto e di più: http://seoblog.giorgiotave.it/seo/tools
Buon lavoro!