у QTableView есть метод resizeRowsToContents(), который устанавливает высоту строк в соответствии с содержимым ячеек.
Если до этого к некоторым ячейкам было применено объединение методом setSpan(), то метод resizeRowsToContents() работает так, как если бы этого объединения не было, т.е. высота строки устанавливается неправданно большой.
Как решить проблему?