Is any of my ideas not leading me in the right direction?
This is how the PCB tracking should be. I've also added questions about some components: -
If you don't have the 0 volts rails nailed down properly on this type of design you will get drift with temperature.
You should also ensure that the 7 volt supply isn't drooping too much either.
- Op-amp is a good choice (on a 5 volt rail)
- MOSFET is a good choice
- Sense resistor is unknown and quite possibly a problem
- DAC is an unknown and possibly a problem
Following an edit by the OP
The DAC choice is very poor for this type of accurate application. This is what it says in the data sheet about its internal reference: -
The DAC reference is driven from VDD directly
In other words, if the 5 volt Vcc is drifting then so is the DAC output. This now calls into question what provides the 5 volt DC power for the DAC and op-amp.