You're absolutely right about the culture changes needed to change the experience for new users, it's terrible right now. I imagine there could be a middle ground, where duplicates are allowed/answered/not aggressively downvoted, but once they're marked as a dupe they could 'fade out' to where they're eventually visible only via a user profile and not found in the main archive or search results.
Languages and tools and practices evolve. Stack Overflow is now getting old enough that the answers a question originally got may no longer be the best way to do things, and sometimes aren't even workable anymore.
If anything, what SO needs is a way to "fade out" old questions in favor of new ones.