Surely trust is one of the keys to any long term relationship. You have broken it big time. Agree totally with Bucky.
So you know you are wrong and are ashamed - so you know what you have to do. Fucking someone because you have feelings for them has nothing to do with the issue.
Do you not realise the damage you have caused to your relationship? I'm not talking about sex with others outside a relationship. I have gay friends who are now married after 30, even 40, years together. Like many other long-term couples, I know that after a few years together they came to an arrangement whereby each could play around a bit - on the understanding that both were open about it and told the other about their experiences.
But to develop not just a quick fuck with your BF's best friend but an emotional attachment is utter madness. You blame the start on the drink. BS! You just thought it would be fun to take that drunken chance encounter further because you fancied the guy. Since then you have given zero thought to the effect on your relationship. You say you are going to have sex with the best friend when you return. But then you say you might dump him. So you show zero self-control. Which is it? More fucks - or thank you and good bye? Whatever you decide, you have shattered your BF's trust and it's up to you to rebuild that. If you don't, sorry to say he doesn't deserve you! If I were him, even after 12 years as your BF, I'd just pack up and leave! After all he has his residency papers, a job and therefore independence.