ad. 1) Jeśli mówimy o faktycznych podstronach, to prawie. Można jeszcze emulować serwer, ale oprócz testów czy developmentu jest to średnio przydatne. W JS-ie jest History API i można użyć np. barba.js lub choćby jquery-pjax, ale obydwa te rozwiązania wymagają serwera. Można użyć samego History API i np. przy zmianie URL-a pokazywać jakieś wcześniej ukryte elementy. Można też, w ostateczności, wykorzystać :target w CSS-ie. Niemniej, jeśli zależy Ci na faktycznych podstronach, to od backendu nie uciekniesz – czy to "normalnego", czy wykorzystywanego przez Ajax.
ad. 2) Nie da się bezpośrednio z przeglądarki. Co najwyżej zapytanie Ajaksem do skryptu na serwerze, który wyśle.
ad. 3) IMO to po prostu załatwiają dobre filtry antyspamowe na mailu. Tak długo, jak będą takie wiadomości trafiać do spamu, nie widzę problemu w wysyłaniu ich. Niemniej można zastosować przy wysyłaniu filtry antyspamowe pokroju Akismeta czy Sblama albo ReCAPTCHę. Blokowanie wysyłania osobom, które wysyłają dużo wiadomości w krótkim czasie, też wydaje się sensownym pomysłem.
ad. 4) Można skonfigurować serwer, żeby dopuszczał tylko połączenia z danego IP – przykład dla Apache'a.