IANAL, nor am I on a Khronos board. That said, this paragraph in the EGL 1.5 Spec suggests pretty strongly that the EGL_MAX_PBUFFER_... enums are used by the EGL implementation to tell the application what limits it supports (e.g. via eglGetConfigs()). The application doesn’t get to negotiate this. It’s a given. And the quote you found indicates that these will be skipped, if found in an attrib_list provided by the client to the EGL implementation, and describes the algorithm to be used for skipping them.
While AFAICT the spec doesn’t call out one of these opinions as invalid, I think it sides with the way the vendor implemented it and the way you expected it to work. There’s no explicit requirement for the EGL implementation to complain in the case the customer is calling out, and it says in the EGL spec that it should ignore these attrs if found, not flag an error.