I have a model that will create a feature class containing one point for each polygon containing just the Maximum Area and the habitat for that area. You should then be able to join this to your polygons using the polygons unique ID which is also an attribute of each point.
Please keep in mind I tested this in ArcMap 10.8.1 so not 10.3
My test data has different field names and only contains 2 polygons and 13 points. Here are snapshot of the starting tables.
MaxTestPoints:
PolygonTest
Using these two I did a spatial joint using points as the target to move the MyTestValue into the points. The result I called MaxTestPoints_SpatialJoin2
Then I created a model that pulls just one point for each polygon from this feature class and appends it into a new feature class I called "MaxTestPointsFinal". Each point in MaxTestPointsFinal is the point representing the Maximum value for a MyTestValue polygon.... confusing I know, but when you see the output below I think it will make more sense.
The model is pretty simple. The top image is just the model. The images that follow that show important details about the steps:
Iterator on polygon layer, value is the unique ID of the polygon
Select by attribute (gets all records that share max value)
Select by Attribute (with Remove_From_Selection option) to exclude all points that do not fall within the polygon being considered.
The append step just appends the identified point to a feature class of all Max value points.
There might be a MUCH easier way, but given the constraints of file GDB in ArcMap 10.3 I sure couldn't think of it.
Hope this helps.
K