I saw these questions late, so I decided to answer all 3 (3x3, 4x4, 5x5 grids) as well as the general case (nxn grids). The answer is
Yes (for any nxn grid)
Regardless of initial position, we can move the Xs upwards so we have them in the following set-up:
XXX......
.........
.........
.........
.........
.........
Then, we can shift this chain of Xs to the right by rotating the leftmost one each time:
.XX......
.........
.........
.........
.........
X........
.XX......
.........
.........
.........
.........
........X
.XX.....X
.........
.........
.........
.........
.........
.XXX....
........
........
........
........
........
Regardless of size of the grid, we can continue this process until the middle X is aligned with the middle column:
...XXX...
.........
.........
.........
.........
.........
Then, we can move the middle X downwards. The leftmost X and bottom X will then be used to put the third X on top of the X in the bottom middle, which we can do repeatedly:
...X.X...
.........
.........
.........
.........
....X....
...XX....
.........
.........
.........
.........
....X....
...X.....
.........
.........
.........
....X....
....X....
...X.....
.........
.........
.........
....X....
........X
...X....X
.........
.........
.........
....X....
.........
...XX....
.........
.........
.........
....X....
.........
...X.....
.........
.........
....X....
....X....
.........
By continuing this process, we will end up with an X in the center of the grid (if n is odd) or 2 Xs in the center of the grid (if n is even).
...X.....
.........
....X....
....X....
.........
.........