Not sure I'm going to stick with this, since it feels a little weird for an first-person view to not be centered on the screen, but at least for now, I've added a big mostly-blank bar for the HUD, and I've moved the map up there.
I was starting to feel like the map was valuable enough that I never want to hide it, but having it as a fullscreen overlay all the time was distracting. So I went with this for now.
Also it was an excuse to add support for viewports to my engine.
This is kind of what I had in mind:
I suppose it might also be reasonable to leave the first-person view full-screen and turn the HUD elements into transparent overlays.
Reserving a portion of the screen exclusively for the HUD sort of has a retro first-person RPG feel, though, which I like. Maybe not quite as drastic as this, but I think it sort of evokes the same:
I guess it might also be reasonable to put the HUD at the bottom of the screen:
Though I tend to feel like the upper right hand corner is the appropriate place for a minimap...