Animation loop issue with Bezier and snapping issue with linear
Looping animation back to 1st frame - Smooth transition :

The gif animation is doing what you're seeking, using Bezier throughout, but straightening the curves in the graph editor at the first and last frames. (where it crosses the red line at the left)



How it's done -

Select the cube (moving object) and go to the Graph Editor.

In there select the first keyframe for the axis required (red is X, green is Y) and use the keyframe handles to straighten out the starting curve so the object kicks off in linear fashion, i.e. without accelleration.  



Go to that same axis' last keyframe and do the same.  

Ensure that the exit curve (at last keyframe) is at much the same angle as the first's.   That will ensure the object doesn't twitch, when the timeline cursor loops back to frame 1.  

(in the example animation at top, that's where the thin cube crosses the red line at the left)

Do the same with the other axis'.  In this example the Z axis wasn't used.