There are a lot of possibilities, ranging from design to machine setup. I am presuming that the overall size of the board is correct, since you didn’t mention that so it isn’t an overall scaling issue. I will also guess that you are using a 45 degree chamfer cutter (90 degree included angle point) tool with a small point, since this is the most common for PCB milling.
In order of easyness (my opinion):
Check the trace widths in Eagle. Set right? (I screw this up on a regular basis, due to the way Eagle handles trace widths, so I always recheck)
Check the trace widths on the PCB-Gcode popup after generation.
Check the PCB-Gcode settings… Tool size and type? Depth of cut specification? etc…
Be sure your machine setup is correct: Is the board flat and zero is dead on? Is your z-axis zeroes properly? Is the tool end the correct size?
IIf I was to make a guess, the MOST likely issue is the tool setting in Eagle/PCB-Gcode (the tool isn’t defined correctly and doesn’t come to a point) or the z-axis zero.
To set the z-axis zero, I tend to use a brass shim maybe 0.5mm thick (or other soft shim or feeler material so as to not damage the tool point) on top of the board, lower until the shim doesn’t slide out freely, then offset by the shim thickness. This gets within about 0.02mm. I usually start a tad high, run a test cut, and then adjust the zero based on the test cut. My test cut file usually cuts circles near the corners where mounting holes will go, as this is useful,tells me if the height is correct, and tells me if the material is out of flat.
Remember that with a 45degree cutter (90 degree included angle), every 0.01mm depth is 0.02mm of cut width, so on a 0.25mm trace, being 0.02mm low will give you a 0.21mm wide trace, 20% narrow, since you will lose 0.02mm each side. Any out-of-flat adds to this.