ciao
è normale il comportamento che visualizzi se ai due elementi assegni un float opposto;
le soluzioni sarebbero 2:

1) assegnare ad entrambi lo stesso float (left in questo caso)

2) racchiudere i 2 div in un contenitore di dimensioni pari alla somma delle 2 larghezze di #imag e #titolo, vale a dire width:800px.

spero di essere stato chiaro.

Floyd