В чем логика быть MAC адресу на первом месте при декапсулировании?
на том уровне абстракции сетевого стека, где принимается решение о маршрутизации IP-пакета в нужную сеть (L3), пакет уже избавлен от MAC-адресов. а чтобы пакет достиг данного уровня абстракции, сначала пакет должен быть правильно обработан на предыдущем уровне абстракции (L2), где как-раз и требуются MAC-адреса.
решение о том, на какой компьютер сетевушка отошлёт пакет (свой или транзитный), в конечном итоге всегда опирается на MAC-адрес назначения (MAC-адрес конечного получателя или MAC-адрес роутера), это последняя вещь, которая становится известна перед отправкой пакета, и первая вещь, которая запрашивается из входящего пакета, поэтому MAC-адреса назначения и отправителя на первом месте, а не где-то ещё.
В чем смысл при путешествии фрейма от одного узла к другому (находятся не в одной сети) указывать первым мак адрес, если было бы логичнее указать IP, чтобы фрейм нашел нужную сети, а затем уже в этой сети по мак адресу нашел нужный узел. Если получатель не в нашей сети, то в L2 заголовке получателем будет роутер, а не конечный получатель.