I don't see why not.
I have lived in UK for 8 years, and pay my taxes here. I'm a productive member of the society, I consider Theresa May as much my prime minister as any British person would. The result of the referendum affects me hugely, and yet I couldn't vote because my passport does not say "Great Britain" on it.
And like the other commenter has said - there was plenty of non-British citizens who were allowed to vote.
The UK has a long history of letting non UK commonwealth citizens vote in things like... The Brexit referendum!
The effects of such a change can last for generations and be hard to reverse, and potentially affect younger people for longer than older people. For those reasons, I think it is better to err on the side of greater franchise than less.
Not just bothered to vote, but allowed to vote.
Citizens of other EU member states, living in Britain, were not eligible to vote (with a few exceptions), and nor were British citizens who had been living in other EU member states for "too long". Moreover, 16 and 17 year olds were disenfranchised too, despite that age group being allowed to vote in the 2014 Scottish independence referendum.