Boolean operations delete double nodes

While working on a variable stencil font I need to have the double nodes, open corners and straight segments with smooth nodes, and Boolean operations seem to merge paths regardless, and delete handles on straight segments. Is there any way around this?

This is a known limitation of the Boolean operations. You can use the Knife tool instead which preserves these nodes: