Как бы сделал я, чтобы никого не путать.
Никаких сдвоенных корзин.
Если в корзине лежать "материальные товары", то запрашиваем данные доставки.
Если информационные товары, но запрашиваем email.
Если и то и другое, то запрашиваем все данные.
Готовых модулей не подскажу.