I think of A2hosting.com as a domain registartion company. They .co.uk $12.95/yr but if I'm not a citizen of UK, can I reg a domain name with this expension?
Why not? If A2hosting.com provides this domain registartion in this zone, it means that you can do it without any issues. As I see A2hosting hasn't risen their prices on domain registartion as many other domain registrars have done.
To the OP, I think you may do it. I don't think you have to be the citizen of the United Kingdom if you want to reg a domain in .co.uk. I think you should contact A2hosting.com and ask them about that directly.