Here's one idea on how they could do it. I've talked about this on here before in some thread. But the basic idea is that there athe re two currencies: real US dollars and cap dollars,
Cap dollars are the dollars specified in contracts and used to define the midpoint, cap ceiling, cap floor, salaries and so on.
Real US dollars would be the amount that each team actually pays the player in US dollars. Currently, 1 cap dollar = 1 real US dollar for all teams. That is, all pligayers on all teams are currently paid (ignoring escrow) the numbers shown in their contract.
My system would change that and here's how.
Each team would be given a multiplier (worked out by NHL/NHLPA and adjusted and approved each season) that reflects the tax burden (in general) in the team's region. This would inlcude "jock taxes" paid to other jurisdictions based on th team's schedule. Basically, a team that had an average tax burden compared to all NHL regions would be given a multiplier ofs 1. If a team's tax burden was 10% above average, they would have a multiplier of 1.1. If a team's tax burden was 95% of average, tehy would have a multiplier of .95.
This multiplier is kind of like an exchange rate for each team and determines what cap dollars are worth in real US dollars
for each team.
So, let's assume two teams: Team A with a multiplier of 1.1 and Team B with a multiplier of .95.
Player Joe Blow is signing a three year contract for a total of 12M that is paid out as 5M, 4M, and 3M over three years. His AAV (cap hit) is 4M. These numbers are all in cap dollars.
Let's say, Joe signs with Team A. Team A has a multiplier of 1.1 so Joe is actually paid 5.5M, 4.4M and 3.3M in real US dollars over the contract. His cap hit is still 4M because cap-related items are always meausred in cap dollars. The muliplier only affects the money actually paid to the player.
Similarly, if Joe signs with Team B, he would be paid 4.75M, 3.8M, and 2.85M in real US dollars. But again, his cap hit remains at 4M because cap stuff is always in cap dollars not real US dollars.
Joe is paid more on a team where his tax burden is higher and less on a team where his tax burden is lower, somewhat evening out his take home pay.
If a player traded during a contract, his pay in real US dollars would be adjusted based on his new team's multiplier with the first pay check from his new team.\
The main things that I havedn't worked out are payments that are made to a player (or former player) who is not living in a NHL region and thus has no multiplier. This could include signing bonuses, buyout payments, and deferred salary.
Things like buyout payments to a player who signs with a new team and retained salary in a trade, would be paid out based on the new team's rate. So, if Joe in our example, was traded from Team A to Team B with 1M retained, that 1M be paid from Team A to Joe using Team B's multiplier. Similarly, if Team A bought out Joe and Joe signed with Team B.
Anyway, that's my idea.