No I think your line trace idea should work great. I was just trying out ideas on how to visually represent the laser beam.
The line trace hit should return which Actor was hit, and I think ApplyDamage is a function in the base Actor class so I think you can call that function on anything. Then the receiving Actor just needs to have that function defined in its blueprint to react to the damage in the way you want.
Although DestructibleMeshes already have a built-in damage handler that tells them when to break apart.