W formularzu html spróbuj bez "user." w definicji pól formularza. Czyli zamiast
<input type="text" id="fullName" th:value="${user.fullName}" class="form-control" />
daj
<input type="text" id="fullName" th:value="${fullName}" class="form-control" />
Poza tym w klasie User brakować Ci możę adnotacji ModelAttribute:
@ModelAttribute(value = "user")