How do I stop enemy spawning?

If you are willing to cover the entire place with walls, that will stop enemies from spawning.

You can craft up something cheap like stone or normal wood walls and that will do. There are also some walls and wallpapers that look very cool and could make your place look just as cool as it does now. If you don't like the look of the walls I recommend using glass or a colored variant, there are also wallpapers that look like the sky.

I personally think your house there may look great with a rugged bottom of some kind of natural-like material that blends with the mushroom basement-y area, and have that connect up to (not in a straight line - I would suggest it being a rugged line) something like a sky-like wallpaper or glass.