Reason for 6-character Limit:
Registrations on the underlying system (Blockstack) are not free.
Currently, the Onename webapp foots the fee for new registrations in order to make it easy for new users to get started (they don't need to worry about fees). However, currently the Onename webapp limits the registrations to 6-characters or more and doesn't allow pricey names to be registered through the webapp.
You can always use the open-source Blockstack CLI to register any name you want directly by paying the appropriate fee in bitcoins yourself.
You can use the Blockstack CLI to check the price of any name:
$ blockstack price yourname.id
You can send yourself some bitcoins and then register the name:
$ blockstack register yourname.id
A detailed tutorial on how to do this at the Blockstack website.
Details on Name Price:
There is a name registration fee plus a transaction fee for blockchain ID registrations in the .id namespace. The registration fee is an anti-squatting mechanism. Without registration fees, a name squatter can register a lot of blockchain IDs without incurring any significant cost and abuse the decentralized namespace. The registration fee is determined by:
a) the length of the username i.e., +fred will be more expensive than +fredwilson
b) presence of non-alphabetic characters i.e., +joe_001 will be cheaper than +joebiden
In addition to the registration fee, there is a standard Bitcoin transaction fee for broadcasting transactions to the Bitcoin network. A typical name registration requires a couple of transactions before it's complete.