I have the handle and the blade but the hand guard is killing me. I can't figure out how to get that shape while making it look like it fits onto the handle
This might be best to model it as as separate chunks inside the same mesh object, or even totally separate objects.
Unless you specifically need a closed watertight continuous mesh (like for 3D printing or fabrication), dealing with those intersection topologies might be more trouble than it's worth. Just let them intersect nicely inside the handle object, and save a lot of work and additional faces trying to solve the weld between the handle and the guard.
So if you don't mind a separate object, or like a more non destructive workflow, you can easily do it with a combination of Mirror + Array Modifier.
Just add a new cylinder object, and erase $3/4$ of it, so you can add a Mirror Modifier to it in X and Y axis.
Add a central loop cut, bevel it, then extrude one of the side faces. Don't forget to erase the inside faces along the mirror seam, or it will lead to bad shading artifacts.
Add a Subsurf modifier, subdivide the previously extruded face and add necessary control loops in both directions to control the shape of the spike.
Then just use an Array modifier to duplicate it along its length. Add an empty object, rotate in 90º about the Z axis, then assign it to Object Offset slot of the Array modifier, so each additional spike is rotated 90º in relation to the previous one.
Adjust the number of items and apply the modifiers if you need a static mesh.