Когда показывается второй блок, ховер с первого уходит - значит, второй блок надо скрыть, и первый снова показать. Сразу же случается ховер у первого блока - он скрывается, второй показывается. Ховер уходит на второй блок - надо его скрыть, первый показать... Показывать второй блок надо не только при ховере на первом, но и при ховере на самом себе. А чтобы второй блок не съезжал, когда первый снова станет видимым, используем абсолютное позиционирование. Типа
так.