I have a ArcGIS Table being served from ArcGIS Online that's reporting a MaxRecordCount of -1 when retrieving the service/layer information through the Layers REST Endpoint. If the layer description is fetched directly from the layer endpoint the appropriate result of 2000 is returned as expected. Likewise with the Service Definition.
A bug in the API perhaps?
MaxRecordCount = -1
MaxRecordCount = 2000
Edit: The original post contained the wrong Hyperlink for layers endpoint. This has been updated.