Defense at an individual player level is overrated. It's hard to measure accurately, a vast majority of people don't know how to watch/scout it, and it's very largely reputation driven.
Offside is an antiquated rule that can and should be overhauled. Have a "floating" blue line - if a defensive player is behind the blue line, they become the plane that the blue line exists on (very similar to offside in soccer). So it's the blue-line unless a defensive player is behind it. No more killing plays because one player is an inch ahead, or having players veer off the play to stay onside. It should make things easier to enforce, should increase offense, and makes for better game flow.
Players should absolutely be given the benefit of the doubt when it comes to leaving teams or making the right decision for themselves financially. People give teams all sorts of leeway, "it's a business", etc., but the players get vilified. Look at Tavares last offseason. He earned the right to decide where to sign, he used it, and yet he gets vilified for it. But when a team decides a player isn't worth the contract they want, it's the smart decision. I hate this and it's something I wish people would just sit there and think about it more than they do now.