В общем я докопался до истины проблемы. Дело в том, что сначала элементам задалась фиксированная высота при заходе на страницу и все она уже не меняется в зависимости от контента, так как функция написана таким образом, что сравнивает высоты и устанавливает наибольшую, но после захода на страницу высоты установились одинаковые. Соответственно при ресайзе нужно высоте давать 'auto', чтобы она могла пересчитываться вновь по максимальной, но тут тоже не всегда срабатывает этот прием, так как бывает хапается старая высота, то есть не успевает сработать 'height: auto', поэтому ещё нужно ставить таймаут.
function heightTitle(parent, el){
var height = 0;
$(parent).find(el).css('height','auto');
setTimeout(function(){
$(parent).find(el).each(function(){
if($(this).height() > height){
height = $(this).height();
}
});
$(parent).find(el).height(height);
},300);
}
У меня вышло вот так, все работает теперь, но может кто сможет укоротить код функции или обойтись без таймаута, буду очень благодарен.