If the filter does not need to be stable, you can use the following in-place algorithm:
Repeatedly find the index i of the first non-even element and the index j of the last even element. While i < j, swap the elements and repeat.
Truncate the array to j + 1 elements.