Du verwurschtelst das n dort. Das n steht für das Element was gelöscht werden soll, laut deiner Aufgabenbeschreibung. In deinen IF-Abfragen nutzt du es aber so, als wenn dort die Länge der Liste enthalten wäre.
Mein Ansatz wäre so:
Bei jedem Rekursionsaufruf wird die Liste um das vorderste Elemente abgeschnitten und an neue Liste gepackt, wenn das vorderste Element gleich dem Element n ist, dann wird dieses übersprungen und das zweit-vorderste Element an die Liste gepackt.