fadeOut не удаляет, а просто скрывает (плавно)
0 == r.length && a(); - вот это я вообще не знаю что делает, чтобы удалить блок можно написать $(this).remove();
sumDiscount += $(this).html();
sumCost += $(this).html();
Неправильно (что ты добавляешь если блока уже нет?). Пройдись по всем оставшимся блокам, пересчитай сумму и обнови значения.