Given the impossibility of retracting your scapula on a flat bench, the best soplution is to pack your shoulders (down and back), which I presume you are doing. This still sucks compared to allowing full scapular movement (yes, on a pressing movement)!. I gave up flat benching in favour of weighted ring push-ups with full sapular retraction and protraction, and all of sudden, I could push without pain in my left shoulder!!! Also, you mentioned that overhead dumbbell presses are better...maybe dumbbells help? Have you tried dumbell bench presses? For me, these are moderately better than barbell bench presses, but still not as good as the rings!