There is no reason a black person couldn’t play James Bond—especially in England where society is culturally more equal among African and Caucasian.
And yes—British is more important. But even an American or Aussie might be able to play a convincing Brit.
The controversy is like with the latest Orphan Annie movie, or the Equalizer movie. It isn’t that these roles are suitable for non-Caucasians but that the ‘character’ themselves is a sort of am archetype or iconic image in people’s minds.
Could Superman be played by an African American? Wonder Woman? Sherlock Holmes? Gomer Pyle? Oliver Twist? Peter Pan? Gandalf?
Of course they could. Its just not the image people have in their minds of the fictional character.
James Bond is contemporary enough that it shouldn’t matter, however.