Do you know about "foot steering" and "railing" your board.
It sounds like you may be standing slightly off center on your board (on the upwind side)
or you are putting pressure on the upwind rail with your heels.
This tips the board so the upwind rail is lower than the downwind (lee) rail and your board does exactly what you are telling it to do. It goes upwind.
You must "rail" your board a little to go upwind when you are not planing (i.e. slogging), but when you are fully planing, you need to keep the board flat, or you need to position your rig a little differently to compensate (this is not fast).
I agree that the your fin is a little large, but having too large a fin will not cause your board to go upwind unless you tip the board slightly lee rail down and push very hard across the top to the fin.
This is how formula racers go high upwind, on very large fins.
Check that when you are planing that the same amount of "splash" (water from under your board) is coning out on the downwind side as the upwind side and the position along the rail is the same for both sides. If you are tipping (railing) your board upwind, the splash will mostly come out the downwind side and where the splash (if there is any) on the upwind rail will be foreard of the splash on the downwind rail.
I'm pretty sure the fin you have can be compensated for very easily, so the fin size is not your real issue.
If your fin was the issue and you were sailing extremely fast, you would be asking why the board goes
out of control and tailwalks (the classic symptom of having too large a fin.