He can't sign for what he is worth because the way RFA works in the NHL depresses the value of players coming off their market value for whatever reason. Probably a combination of teams being unwilling to give up the compensation, and GMs knowing that fact.
Correct. All RFA status does right now is ensure that GM's can't force players into truely lowball contracts.
With both mechanism's in place it's not so much free agency with restrictions as the old reserve clause with a pressure valve and a fancy name. This is by design by the league, and imagine they would fight any changes tooth and nail.