The problem is taking the amendments as unchangeable and almost divinely commanded. They were things written by people hundreds of years ago, and they can be changed. They're literally called amendments. It doesn't matter whether the second amendment protects gun rights, it's up to us nowadays to decide if we want people to have the right to a gun, decided based on our ethical arguments, not what an old document says.
I say this as a non American, it's just pretty weird to me that even the anti gun people defend their position by quoting the second amendment (usually), rather than suggesting changing it.