Is the output of Data::Printer good for reading it back as a Perl var?
No, I don't believe it is - hence my comment about those modules being mostly debugging tools.
what I am trying to do is to visualise a long JSON by converting it to a Perl var and then possibly edit the perl var, and finally save back to JSON (with the changes)
You might give YAML a try, such as tinita's YAML::PP, that should be better for round-tripping and more readable than JSON.
Update: I see that you already commented on YAML in your edit of the root node. Sorry, but the dumper modules aren't going to give you the behavior you want, so you really might want to reconsider YAML. Otherwise, unless there's a CPAN module that I've missed, if you really, really want Perl, you could roll your own, but that comes with so many caveats I can't reccomend it. Or try a JSON pretty printer to make it more readable...