Just because Kirk took a grade reduction to command the Enterprise to intercept V'Ger doesn't mean Starfleet Command would let him keep it. It's the military, you don't get to decide a hell of a lot and if they want to bench you, they're gonna goddam bench you. Something apparently came up in the space between V'Ger and Khan that made it vital Kirk retake the Admiral's stripes and go do something else. As much as Kirk loves being a starship captain, he is also a career officer. He accepted the promotion like you accept a suggestion made by your wife. Say no at your own peril, in this case, at the risk of a career. "You want to stay in the service, Kirk we need you to command a fleet, not just a vessel. Your skill and experience will be invaluable to Starfleet." He could have resigned and taken a merchant command, I suppose, but this idea of Kirk having a choice bugs me a bit.
When Kirk got "busted" back to Captain in TVH, that was a reward for saving the planet. He never made it a secret that he wanted to be a starship captain, so now he got his wish. "It's the least we could do," would be the attitude.
Just my take on it.