A forum post asked for a plugin that can ban the name, but not the account. Figured I'd throw one together. Built and tested in 1.16, but probably works in others. I'll test later and update.
Commands
NAMEBLOCK block playername
nameblock.block Blocks the specified player name from joining
NAMEBLOCK unblock playername
nameblock.unblock Clears a block on the specified player name
NAMEBLOCK list nameblock.list Shows what names are currently blocked
NAMEBLOCK msg set playername message
nameblock.msg.set Sets a custom kick message for specified player name
NAMEBLOCK msg clear playername
nameblock.msg.clear Clears custom kick message from specified player name
NAMEBLOCK msg show playername
nameblock.msg.show Shows custom kick message for specified player name