You've allowed a crush to linger for two whole years without confessing your feelings, yet you say that you "know" the feelings are not mutual. Are you perhaps jumping to conclusions or taking someone else's word for it? He's your best guy friend. This merits a discussion. You talk to him about all kinds of things so you can talk to him about this.
Chances are your crush on him is the elephant in the room so have a candid conversation about your feelings for him. It's okay to acknowledge that it's awkward and express that you don't want to ruin your friendship but you need to be open and know how he feels. Be prepared for the possibility he may reject you or maybe harboring some leftover feelings for your other friend or maybe confused. Try to settle on a positive path forward together. Regardless of what his answer is, thank him for talking with you and being open.