Python - Exporting Each Selected as FBX
Why your code below obj_name = obj.name is outside the for-loop? It should be in the same loop, isn't it?

Use select_set() for selection:

obj.select_set(True) : select the current object, useful for exporting selection.
You need to manually deselect it after exporting, or call bpy.ops.object.select_all(action='DESELECT') to deselect all.

Minor things

Get the object's original position:

You can copy the location to a reference instead of casting it to string and convert it back.

org_obj_loc = obj.location.copy()

Sends object to zero vectors

You can assign a Vector() to it: obj.location = (0,0,0)

Whole code

def execute(self, context):
    for obj in bpy.context.selected_objects:
        bpy.ops.object.select_all(action='DESELECT')
        obj.select_set(True)
        org_loc = obj.location.copy()

        # Sends object to zero vectors.
        obj.location = (0,0,0)

        # Creates the path for the exported fbx.
        obj_path = os.path.join(context.scene.worth_group_tools.dir_path,
                                obj.name + "." + "fbx")
        # Export object as fbx. Works, except all selected objects are
        # exported into single fbx instead of one at a time from the list.
        bpy.ops.export_scene.fbx(filepath=obj_path, use_selection=True)

        # Prints each object in list.  Works.
        print(obj.name)

        # Returns the object to its original position.
        obj.location = org_loc

return {'FINISHED'}