Cita: 2: Cuando añado los campos con obj.innerHTML += '...', se me borra lo escrito en los campos
La propiedad innerHTML es de sólo escritura.
Cuando quieres hacer esa operación, en realidad estás haciendo:
obj.innerHTML = obj.innerHTML + '...'
y del lado izquierdo de esa expresión, sí estás escribiendo, pero del lado derecho estás queriendo leer el valor de innerHTML.
Algo que puedes hacer es
no utilizar innerHTML hasta el final y mientras usar una variable para las operaciones intermedias, algo como:
var = cadena = 'sí, sí, estoy bien, nos vemos mañana ';
cadena += 'en el café que está en la plaza ';
cadena += 'Galerías a las cinco de la tarde';
obj.innerHTML = cadena;