Is there a way to clear sharp edges using bmesh in python?
You can set use_edge_sharp flag per edge on MeshData.edges in Object Mode:

import bpy

obj = bpy.context.object

# Clear sharp state for all edges
for edge in obj.data.edges:
    edge.use_edge_sharp = False




If there is no way around Bmesh for whatever reason, you can set the smooth state of all edges to True in Edit Mode:

import bpy
import bmesh

obj = bpy.context.object
me = obj.data
bm = bmesh.from_edit_mesh(me)

# Clear sharp state for all edges 
for edge in bm.edges:
    edge.smooth = True

# Update the mesh
bmesh.update_edit_mesh(me, False, False)


Related: Is there a way to select edges marked as sharp via python?