На ответы не претендую, выскажу свои скромные теоретические мысли по поводу.
1) Ну это вполне ожидаемо, что нативный img будет быстрее перерисовки фона у блока. В случае а
сама картинка и является блоком, в случае б
блоком является див, которому при анимации в каждой итерации применяется новый CSS с позициями и т.п., что вызывает перерендеривание элемента и, видимо, фона в том числе, т.к. фон является CSS свойством… На лицо недооптимизированность хрома в этом моменте, но я думаю у девелоперов есть причины на это.
2) Совсем теоретическое мнение:
Судя по всему область отрисовки каким то образом определяется всеми предками по flow, в случае position:absolute
мы родителя вырываем из контекста документа, что дает браузеру возможность не париться о предках. Но позиционируя элемент абсолютно мы тут же теряем весь смысл flex лэйаута.