It’s a pretty simple solution. It’s an intentional foul. You can’t purposely foul someone who doesn’t have the ball. Just like when you foul someone with the ball you have to go for the ball. Make a rule that does not allow intentional fouls and you get rid of Hack-a-Shaq.