Это решается элементарно. Например, в код добавляется правило
1. Всех непотраченные входы больше N блоков считаются нулевыми и потраченными, а их сумма добавляются к вознаграждению за блок.
Можно похитрее. Эти суммы добавляются в фонд, из которого, пока хватает, мелкими суммами добавляются к вознаграждениям за блок.
Чтобы раздача майнерам была посправедливее.
N можно взять достаточно большим, чтобы было там 20 лет, 10 лет. Достаточно, чтобы Биткоин-сообщество большинством одобрило правило.
А потом находится хозяин адреса, и второй раз расходует свои условные 100к монет, так как монеты на его адресе конкретно никуда не исчезнут (по крайней мере для старых клиентов нод и всех несогласных).
Во вторых, разговор был о переносе монет с адреса А на адрес Б без собственно формирования транзакции. (а не награде майнерам) Такое то тоже в теории можно сделать, правда придется реорганизовывать цепочку блоков с той транзакции, переписывать сложность (чтобы не пришлось опять майнить 7,8,9 лет, пока блокчейн заново запустить) и еще менять всякие пункты по мелочи.
Вы невнимательно читаете.
"Все непотраченные входы больше N блоков считаются нулевыми и потраченными". Значит, после того, как их забрали в фонд, второй раз потратить не получится.
А для тех, кто не согласился, нет транзакции, которая отдает их майнерам. Поэтому у них это будет первая трата.
Можно перенести майнерам, значит при желании можно перенести и в адрес Б. Было бы согласие большинства. Для этого не надо взламывать адрес А. Простое переписывание кода. Именно то, что и предлагал Ваш оппонент.
Откуда Вы взяли требование "без формирования транзакции"?
"то вполне возможно что команда Bitcoin Core может пойти на такой шаг и с одним из обновлений просто переместить "утерянные" монеты с одного кошелька на другой, контролируемый."
Здесь про это ничего не говорится.
Вообще, все действия надо монетами в блокчейне отражаются в виде транзакций.
И даже Ваш способ, переписывание блокчейна, предполагает, что будет транзакция, в результате которой на адресе Б появится сумма.