Почему когда заходишь на сайт, обратная связь сразу отправляет сообщение?
Добавьте проверку на существование переменных $_POST:
<?php

require "index.html";
header("Content-type: text/plain; charset=utf-8");

if (
	$_SERVER['REQUEST_METHOD'] == "POST" &&
	isset($_POST["name"]) && 
	isset($_POST["message"])
) {
	$to = "damirgaliev587@gmail.com";
	$tema = "Форма обратной связи на PHP";
	$message = "Ваше имя: " . $_POST["name"] . "<br>";
	$message .= "E-mail: " . $_POST["email"] . "<br>";
	$message .= "Номер телефона: " . $_POST["phone"] . "<br>";
	$message .= "Сообщение: " . $_POST["message"] . "<br>";
	$headers = "MIME-Version: 1.0" . "\r\n";
	$headers .= "Content-type: text/html; charset=utf-8" . "\r\n";
	mail($to, $tema, $message, $headers);
}
?>
Попробуй все реализовать в одном файле на mail.php

<?php
header('Content-type: text/plain; charset=utf-8');

$to = "damirgaliev587@gmail.com"; 
$tema = "Форма обратной связи на PHP"; 
$message = "Ваше имя: ".$_POST['name']."<br>";
  $message .= "E-mail: ".$_POST['email']."<br>"; 
$message .= "Номер телефона: ".$_POST['phone']."<br>"; 
$message .= "Сообщение: ".$_POST['message']."<br>"; 
$headers  = 'MIME-Version: 1.0' . "\r\n"; 
  $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; 
mail($to, $tema, $message, $headers); 

?>
<div id="contacts">
    <h6>Записывайтесь на бесплатную консультацию</h6>
  <form action="./mail.php" method="post">
  <fieldset>
  <legend></legend>
 
  <input type="text" name="name">
  <h13>Имя:</h13>
  <input type="text" name="email">
  <h13>E-mail:</h13>
  <input type="text" name="phone">
  <h13>Номер телефона:</h13>
  <textarea rows="10" cols="45" name="message"></textarea>
  <input type="submit" value="Отправить сообщение">
  </fieldset>
  </form>

  </div>