Forse ho trovato il modo!! 
 
Dicevi che il tuo tutor parlava di un singolo campo hidden e una variabile in più..
Prova così:
all'inizio della ASP aggiungi una variabile (per esempio di nome 'verifica') che servirà a far capire alla ASP se sta venendo chiamata per la prima volta o se sta avvenendo il reload e fai
<% ...
verfica=request.form("v")
...
%>
Siccome la prima volta che accedi alla ASP non hai nessun valore per v (in quanto 'v' non esiste nel form della ASP da cui entri in questa), la variabile 'verifica' prenderà come valore "" (null).
Questo farà capire al programma che è la prima volta che viene chiamato.
A questo punto, nel form da cui parte tutta la faccenda dell'onChange e del reload aggiungi un
<input type=hidden name=v value="ok">
Ora posizionati subito dopo la select che preleva i dati utente dal DB e fai
<%
...
sql=" select * "_
&" from AUtente U "_
&" inner join TCitta C on U.ID_Citta = C.ID_Citta"_
&" where ID_Utente="& request.form("id_utente") &""_
&" order by Cognome "
IF verifica="" THEN   --> 'significa quindi che la ASP sta venendo chiamata per la prima volta
rs.Open StringaSQL,oggconnection      -->   'fallo qui all'interno dell'IF mi raccomando!
 if not rs.eof then
  id = rs("ID_Utente")
  utente = rs("Nome_Utente")
  pass = rs("Password")
  nome = rs("Nome")
  cognome = rs("Cognome")
  data = rs("Data_Nascita")
  indirizzo = rs("Indirizzo")
  telefono = rs("Telefono")
  email = rs("Email") 
  paese= rs("Citta")
  cap = rs("CAP")
  prov = rs("Provincia")
 end if
ELSE    --> la variabile verifica è = a "ok", ovvero non è vuota, e ciò significa che sta avvenendo il reload e la ASP capisce che NON deve leggere i dati utente da DB ma solo dai value degli input text
 id=request.form("id_utente")
 utente = request.form("utente")
 pass = request.form("password")
 nome = request.form("nome")
 cognome = request.form("cognome")
 data = request.form("nascita")
 indirizzo = request.form("indirizzo")
 telefono = request.form("telefono")
 email = request.form("email") 
 paese = request.form("citta")
 cap = request.form("cap")
 prov = request.form("provincia") 
END IF
...
%>
In questo modo nel reload non c'è rischio di perdere i riferimenti perchè non si va più a collegare al DB per avere i dati dell'utente e riuscirai a modificare solo i campi provincia, città e cap senza problemi (SPERO! 

 )!
Fammi sapere!  :byebye: