Это вызвано тонким, но важным изменением, которое Apple внесла в поведение UITableView для верхних и нижних колонтитулов разделов. Если вы реализуете tableView: viewForHeaderInSection: или tableView: viewForFooterInSection: делегировать методы, тогда вы ДОЛЖНЫ теперь также реализовать tableView: heightForHeaderInSection: и tableView: heightForFooterInSection: делегировать методы.
Дополнительный пустой заголовок раздела, который вы видите, вызван возвращением 'nil' из методов '... viewFor ...', но не возвращает 0 из методов '... heightFor ...'.