Here is my cube. The locations are what you expect. 0-0-0 and the orgin is at the center.
I move my cube to a new location and I want to apply new transforms so that the location says 0-0-0 and apply transforms:
As you can see it worked, the new location is now 0-0-0 but the orgin is now back to the center of the grid.
Now the problem is if I set the orgin to center of object, it'll revert the old coordinates back to what they were before. I have a feeling this is acting as it's supposed to because I guess you can't apply new transforms AND set an orgin to the new location?