I have used concrete resurfacer on sidewalk when I needed to raise some portions of it. This worked very well, looks fine, and has held up for at least the last five years.
I do not remember which brand I used off hand, but I purchased it at either home depot or Lowes, do not remember which. I also know that it was 5x to 10x the cost of regular concrete. I did it because it cost me half of what it would have cost to pay someone to come out and replace the one block of sdiewalk and I had no easy way to dispose of the concrete if I broke it up.
On a whim, I put some on my driveway for the same reasons you have, and it has held up well, but I just did a small section and it is not very deep. It is still holding up great, but since I did just a small area, it is clear where I put it. It would be very expensive (I think) to top coat my entire driveway (which is not very big) and I am not sure how easy it would be to do and make it look good.
Whatever I used, was rather thick and I think that there are products that might be more self leveling, but I have no experience with those.
If you are doing a large area, it is probably cheaper to just rip it out and redo it if you want it to look uniform.