Putting footer content in a “page” – Doing it wrong?

I don’t think there’s anything fundamentally wrong with your approach, I see it pretty often.

You could hook parse_request and 301 redirect any requests to footer to the front page. I wonder though how visitors would end up there in the first place, as long as you exclude it from the sitemap and don’t link to it anywhere.

Or you could create a custom post type for this kind of content and make it not publicly query-able.