Seca los camarones con papel de cocina, pica la cebolla, el ajo y la albahaca, y ralla los quesos. Precalienta el horno a 200 °C y engrasa ligeramente una refractaria de aproximadamente las 30 x 20 cm.
Hierve abundante agua con sal y cocina los espaguetis hasta que estén al dente, aproximadamente un minuto menos de lo indicado en el paquete. Escúrrelos sin enjuagarlos y resérvalos.
Calienta la mantequilla con el aceite en una olla amplia a fuego medio. Agrega la cebolla y cocina de 4 a 5 minutos, hasta que esté transparente y haya perdido el olor crudo. Incorpora el ajo y remueve durante 30 segundos, sin dejar que se dore.
Añade la harina y remueve durante un minuto para cocinarla. Vierte el vino blanco y deja que hierva suavemente durante 2 minutos; después incorpora el caldo poco a poco, batiendo para mantener la mezcla lisa. Agrega la leche, la crema, la mitad de la sal, la pimienta y el orégano.
Cocina la salsa a fuego medio-bajo durante 6 a 8 minutos, removiendo con frecuencia, hasta que cubra el dorso de una cuchara. Retírala del fuego y mezcla la albahaca. Prueba y ajusta la sal, recordando que los quesos también aportan sazón.
Calienta una sartén a fuego medio-alto y cocina los camarones durante 1 a 2 minutos por cada lado, solo hasta que estén rosados y opacos. Retíralos de inmediato para evitar que se resequen.
Integra los espaguetis con aproximadamente tres cuartas partes de la salsa blanca. Añade la mitad de los camarones y mezcla con suavidad para no romper la pasta.
Distribuye la pasta en la refractaria, cubre con la salsa restante y reparte por encima los camarones que reservaste. Termina con el parmesano y la mozzarella rallados.
Hornea durante 8 a 10 minutos, hasta que el queso esté fundido y dorado en los bordes. Deja reposar la pasta durante 5 minutos antes de servir para que la salsa se asiente sin perder cremosidad.