1. Dobrze napisany kod będzie bezpieczny, chyba że wyszłaby jakaś dziura w samym języku, ale już takiego czegoś nie zakładam. Pytanie "jak to należy zrobić" jest zbyt ogólne, na dobrą sprawę wszędzie można popełnić jakiś błąd. Jeśli chodzi Ci o normalne płatności pieniężne to w praktyce raczej integruje się gotowe rozwiązania jak PayU, Przelewy24 czy PayPal, szkoda czasu na pisanie tego wszystkiego samemu (bardzo długo i tak nie zrobisz tego na takim poziomie na jakim już są te usługi).
2. Tu się dobrze nie orientuję, mogę jedynie polecić źródła w sieci:
https://pl.wikipedia.org/wiki/Transport_Layer_Security
3. Myślę że samo szyfrowanie komunikacji to największa i bardzo ważna zaleta. Podobno Google bierze to też pod uwagę podczas pozycjonowania.
4. Jeśli nie potrzebujesz jakiegoś wyższego stopnia weryfikacji to prawdopodobnie dowolny, nawet darmowy Lets Encrypt.
5. To też zbyt ogólne pytanie. Nie znam się na praktykach SEO, średnio z resztą wierzę w magiczne pozycjonowanie, więc polecę po prostu pisanie dobrego semantycznie kodu. Patrz tak, aby użytkownikowi dobrze się z tego korzystało, a nie pod SEO.
6.
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang#Language_tag_syntax