MATL, 8 bytes
t2L)P5M(
Try it online! Or verify all test cases.
Explanation
t % Implicit input. Duplicate
% STACK: 'abcdefghi', 'abcdefghi'
2L % Push [2, 2, 1j]. This represents 2:2:end when used as an index
% STACK: 'abcdefghi', 'abcdefghi', [2, 2, 1j]
) % Get entries at those indices
% STACK: 'abcdefghi', 'bdfh'
P % Flip
% STACK: 'abcdefghi', 'hfdb'
5M % Push [2, 2, 1j] again
% STACK: 'abcdefghi', 'hfdb', [2, 2, 1j]
( % Write entries at those indices. Implicit display
% STACK: 'ahcfedgbi'