Выходы-то есть:
Самый простой и кроссбраузерный, но допотопный - переписать выдачу в таблицу. Там ячейки автоматом все выравниваются.
Посложнее, но не кроссбраузерно: стилями скрыть лишние символы строки, запретив ее переносить.
Посложнее, но ущербный в плане информативности - сделать обрезку строки по количеству символов (если название, или описание длинее строки, отведенной под него, скрипт просто срежет лишние символы). Это убого в плане того, что может обрезаться часть модели (модификации) товара.
Посложнее, но без особых знаний программирования - отвести побольше места для названий и описаний. Например так, чтобы могла поместиться еще строчка текста. Настраивается через CSS
Еще сложнее, но уже более грамотно - написать javascript, пересчитывающий количество символов в названии и описании всех товаров на странице и выставляющий в таком порядке, чтобы было ровно. То есть, если у 4 товаров название не помещается на одной строке, а у остальных (например) 16 - помещается, по скрипт выставит (например) 16 товаров с однострочным названием, а ниже 4 товара с двустрочным названием.
Как-то так.
Можно еще костылей придумать, но по-моему и этого достаточно :)