Потому что jq написан на нативном js. jQuery и учить особо не нужно открыл доку и пользуешься. Если Вам его достаточно и больше Вам ничего не нужно то верстайте, делайте открыть/закрыть и живите спокойно. Если же хотите развиваться в фронтенде, понимать как работает таже jq и почему 100 КБ это много, то учите нативный js и возможно больше не захотите писать на jq))
При выборе товара и его количества сохраняете эту инфу в localStorage/sessionStorage/бд, при при удалении, удалять, при редактировании изменения. После оформления заказа очищать
Юзаю axios)) если у Вас грамотно написан код, то думаю за httpRequest ругать никто не будет. Кроме того если юзать fetch и dynamic import то у Вас будет возможность загружать полифил только там где fetch не поддерживается))