Was soll das setTimeout? was hast du gegen success bzw. complete - die ajax-Methode macht das doch schon - was ist wenn du erst nach 1,2 Sekunden eine antwort erhältst? Was ist, wenn du eine Fehlermeldung bekommst?
Der Content-Type auf der Client-Seite war leider ein Roter Hering - in deinem Fall ist das egal, kümmere dich um die Serverseite und sorge dort, dass die Zeichencodierung passt.
Doppelposting? ... machen wir doch bitte dort weiter.