I would like to see the limitation removed. IIRC, Guido has said the same.
That said, the limitation isn't due to anything in the namedtuple code. Instead, it is due to a CPython bytecode implementation detail that limits all function/method definitions to no more than 255 arguments.
Currently it is not possible to declare a Python function with more than 255 parameters. There were two historical causes of this:
Opcodes MAKE_FUNCTION and MAKE_CLOSURE packed the number of default values for positional and keyword parameters in the opcode argument as 8-bit numbers.
co_cell2arg was of type "unsigned char *". It's mapped a cell index to an argument index and didn't support arguments with index > 254.
The first limitation is disappeared in 3.6 after changing the format of MAKE_FUNCTION (bpo-27095). Proposed patch gets rid of the second cause by changing the type of co_cell2arg and removes explicit check in the compiler.