I recently received a job offer from A, my second choice, via email but had a final interview scheduled with B, my first choice, a few days later. I gave a verbal acceptance to A (although it was not my intention to do so. I felt that saying "I need more time" and the like was not a good idea, especially since I didn't have definite options at hand). A sent my name to HR to background check and asked for a potential start date and I responded accordingly (which was a mistake... should have asked for more time at this point).
But, during my B interview, I was offered the job at the end of the meeting (probably because I told them I already had job offer from A on the table).
I feel that I have the right to take B's offer, since the background check for A is not completed and did not sign anything (though, these jobs do not necessarily need a signature), but am in an awkward situation to settle with A. I am afraid of an unpleasant response, especially because I feel very grateful for the job offer, the first one in months. How should I handle this?