boolean multiple meshes without fusing and keep faces
This can be done, although it is a bit of a work around.

Select the hexagon object and add the Boolean Modifier to this object (as apposed to the object that cuts it in to a point), and as the modifier Object select the cutting object.

Add the hexagon object to a collection (this is optional but makes things slightly easier. Also in the future this is how you might be doing this step)

Select the hexagon object and go into Edit Mode. Press P to Separate &gt; By Loose Parts. Now all the hexagons are separate objects, but they all have the Boolean Modifier.

Now you want to apply all the modifiers, but it would be cumbersome to do them individually. Luckily there is a trick. Select all the separate hexagon objects (possibly by right clicking the collection and choosing Select Objects) and then press Alt + C to covert them to different type of object and choose Mesh from Curve/Meta/Surf/Text. The hexagons are already a mesh but this operation will apply all the modifiers.

Finally select all the separate hexagon objects (make sure one is selected to be the active object) and press Ctrl + J to Join them into a single object again.


Because the boolean operation was done on each hex individually the chance of missing faces in significantly reduced (i think you'll find none, and I'll be surprised if you'll find any) and fusing together should be impossible.