Override theme style rule in Gutenberg

.entry-content a:hover is more specific than .wp-block-button__link:hover.

According to the rules of specificity, the first selector contains 2 class selectors (.entry-content and :hover), and 1 type selector (a), for a specificity score of 0,0,2,1.

The second selector, on the other hand, contains 2 class selectors (.wp-block-button__link and :hover), and no type selectors, for a score of 0,0,2,0.

It wasn’t clear to me from your question where exactly the second set of selectors was coming from, but assuming that you can’t edit them, the solution would be to exclude Gutenberg buttons from your original selector. You can do this with the :not pseudo class:

.entry-content a:not(.wp-block-button__link):hover {
    color: <color selected in the Customizer>;
}

Now your Customizer-selected colour will only apply to links that are not block editor/Gutenberg buttons.