(3) Например, не завершать транзакцию, если не получено подтверждение от 1С. Если таймаут или ошибка в 1С то откатывать. Делать это последним этапом, чтобы минимизировать риск отлупа транзакции уже после получения подтверждения от 1С.
(5) Можно вести журналы распределенных транзакций где одна из сторон выступает координатором распределенных транзакций. С записью информации необходимой для отложенного отката.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс