Why can't I change my username?
Because apparently when Sony originally built PSN they used a single identifier for usernames i.e. your PSN name, rather than a sequential number to identify the account, with the PSN ID as a secondary ID. This is something you build into your tables when you create a DB.
This means in order to enable name changes they will need to fibd some way to migrate the whole of PSN to a new DB using an ETL that adds the new ID during the Transform.
Given the way PSN is stitched together with duct tape & hope I imagine that there are any number of other show-stoppers involved especially as PSN accounts are also your 'Sony' account where you can register your other Sony devices, manage warranty stuff and so on.
I mean it's doable but we're talking about accounts with gamer trophies in them so unlike say, medicine or law where you can stick a 5 or 7 year cut-off on data migrations to new platforms and archive older stuff with legacy application access (if required), gamers being gamers will completely loose their shit if some trophy they got in 2007 is removed from their account.
So it's not something you'll get resolved in a FW update.