It seems CountryData and EntityValue get this answer through "The World Factbook":
CountryData["US", "Area"] == EntityValue[Entity["Country", "UnitedStates"], "Area"]
True
EntityValue[Entity["Country", "UnitedStates"], "Area", "Source"]
{Entity["Source", "CIAFactbook"]}
If we check this source, we see

This answer is different from CountryData's. I'm not sure how the Factbook gets this answer and whether this is the spot Wolfram found the data point within the corpus. Also, checking the Wayback Machine I notice this value changes from time to time.
My guess is this estimate includes some territorial water, like @FJRA suggested in the comments. However I don't think this includes maritime boundaries, as this would make the total area much larger for the US.
Additionally I believe the answer returned by GeoArea is correct. We can verify this by first triangulating the polygon to approximate its shape on a 3D globe. From there we can estimate the surface area.
poly = CountryData["US", "FullPolygon"];
mr2d = TriangulateMesh[BoundaryDiscretizeGraphics[poly], MaxCellMeasure -> .1];
c3d = First[GeoPositionXYZ[GeoPosition[Reverse[MeshCoordinates[mr2d], {2}]]]];
mr3d = MeshRegion[c3d, MeshCells[mr2d, 2], BaseStyle -> Darker[Green]];
(* approximate globe as smaller sphere to prevent z-fighting *)
Show[mr3d, Graphics3D[{Lighter[Blue], Sphere[{0, 0, 0}, 6360000]}]]

Area[mr3d]*10^-6
9.46896*10^6
GeoArea[poly, UnitSystem -> "Metric"]
Quantity[9.4692*10^6, "Kilometers"^2]