Hi,
Thank you for the reply.
Actually, the answer is super simple and kind of stupid. The latter part of the fan, which is attached to the extruder ensemble, is stopped by the z-axis cover. This is the reason why it always gets stuck half way.
When I was doing the axis maintenance as here Axes Maintenance in Zortrax M300 Dual 3D Printers | Zortrax Support Center, I removed the z-axis cover to make sure I can move the extruder around the house easily. No surprisingly, the extruder was still stuck, and this problem has been solved by changing the location of the bearings a little bit with a wrench.
For people encountering the same problem, this discussion could also be helpful. Axes issues - troubleshooting
Cheers,
Bqi