The values reported in the datatips are accurate, judging from the png image. Precision seems to be the issue, not accuracy. Note that your x and y axis ticks are x10^4. The reason the two x-values appear to be 77020 is probably because the data tips are not showing more precise values (ie, 77020.48930).
Here are two method To change the precision of datatip values.
Method 1: custom update function
Adapt this demo to your needs. The custom update function is not called when manually adding datatips with the datatip() function (available in Matlab r2019a and later).
ph = plot(magic(5).*7000+rand(1), 'o');
dcm = datacursormode(gcf);
set(dcm, 'UpdateFcn', @customDataCursorUpdateFcn, 'Enable', 'On');
function txt = customDataCursorUpdateFcn(~, event)
txt = {sprintf('X: %.5f', pos(1)), sprintf('Y: %.5f', pos(2))};
Method 2: using DataTipTemplate
Unlike method 1, this method is supported when manually adding datatips with datatip(). Since datatip content differs between objects, you may need to adapt this demo to your needs. The demo changes the x and y values which are assumed to be in the first and second rows of the datatip. This is applied to all line objects in vector ph.
ph = plot(magic(5).*7000+rand(1), 'o');
ph(i).DataTipTemplate.DataTipRows(1).Format = '%.5f';
ph(i).DataTipTemplate.DataTipRows(2).Format = '%.5f';
Show example datatip
datatip(ph(1), ph(1).XData(4), ph(1).YData(4));