Auto-smooth bevel object
Keep smooth shading but simply use 2 very close control points at your sharp edges. This way you can control your bevel shading perfectly, the closer the points, the sharper. The drawback is added geometry (one additional curve segment).

Here is a sharp edge with a single control points. No sharp edge:



Instead, the same edge but using 2 control points very close to each other: