Does WordPress store the username as a primary key in the database?

WP is not likely going to add this feature…

From https://core.trac.wordpress.org/ticket/14644, the main reason given by Nacin is:

This is a caching issue. Additionally, it also breaks URLs and such, which is why I don’t think administrators should be able to do it either.
Seems simple enough to relegate to a plugin, or a straight DB edit.
Suggesting wontfix.