Where does this restriction come from?
I would expect the vertex count to be limited by the datatype/size of the indices, which in case of 2byte would be 65536 vertices used by as many triangles as I want. Is there any chance that this could be a bit relaxed in the near future?
And what about 32bit indices?
Are submeshs of models culled sperately if they are big? Do they share their vertexbuffers (it seems so, and probably also the indexbuffer is shared, as the 64k faces restriction is for a complete model, counting all submeshs)?

I am just wondering, as the 64k restriction seems a bit outdated. I currently for example have some water mesh with 64k vertices but about 100k faces, which I would like to use as one mesh, not having to split it into several meshes...