т.е. сначала добавлять товар в корзину, а потом её очищать?
Просто сделай по нормальному, при добавлении в корзину идет запрос на твой php контроллер, который чистит корзину и добавляет текущий товар на который кликнули в корзину, да и все, на js не затронув исходники ты все равно стабильности не добьешься, хотя бы потому, что на время записи в сессию (а при добавлении товара он пишется в сессию) сессии блокируются, и при очистке корзины сессии блокируется, а в твоем варианте добавление и очистка происходят одновременно из за чего в зависимости от скорости интернета будет происходить либо добавление либо очистка