Hola:
Es que la respuesta ya parece que la conoces: Los objetos Ajax no admiten el enctype para adjuntar ficheros (multipart/form-data)... y tampoco podrías leer el contenido del adjunto; así que los que implementamos la subida de archivos "simulando" Ajax, simplemente hacemos el submit dirigidos a un iframe oculto (o maquillado) con el evento change del campo file...
Saludos