In TOS Kirk joined away teams fairly regularly but by Picard's time Starfleet frowned on captains doing so (mentioned in TNG episode Time's Arrow pt 1, as well as in the film Nemesis)- was there ever mentioned in canon when this attitude shifted and the reasons for it?
Well, two days and no answer so I'll take a thwack at this one. I think it's a good question and I may not really be qualified to answer. But it's a start.
I am not aware of any specific mention as to when or why the policy was changed. But I will posit this guess: maybe the policy developed as the role of a dedicated first officer became increasingly necessary (perhaps initially as starships and administrative needs grew bigger). Then, as first officers became tasked solely to command duties, it made more sense to keep the captain safe on the bridge for the good of the ship and the mission. Eventually the role stuck and even smaller ships (like Voyager) retained dedicated first officers depending on mission need.
In ENT and TOS captains were in charge and free to do whatever they wanted. The first officer did double duty as a department head (in this case science officer). If you look at the Excelsior bridge--which was designed around 2280 and carries a standard crew complement of 750--you see only the captain's chair in the middle. No chair for first officer. This implies that the first officer is also a department head sitting at a bridge station. (I know: Defiant. Read on.)
When Sulu was captain of the USS Excelcior, he did not seem to work with a first officer. Similarly, the Ambassador class Enterprise-C --which was built forty years later in 2332 and destroyed at Narendra III in 2344--also does not seem to have a dedicated first officer. Its bridge also only has a single seat for the captain. Lt Castillo--who was the only other surviving bridge officer besides Capt. Garrett--was originally the helmsman. Although he is now second in command, no one refers to his new role (I know you can't infer much from that). But when Garrett dies:
CASTILLO: I'm prepared to lead the Enterprise back myself, Captain Picard.
RIKER: Sir, Lieutenant Castillo is the last surviving senior officer. He will have limited support from Ops, no Tactical, reduced staff in Engineering.
CASTILLO: I have good people willing to do their best.
RIKER: Certainly, history never meant for this ship to go into battle without her captain.
No one mentions the "first officer" title. (I know that's not much to go on and that "Yesterday's Enterprise" is an alternate timeline.)
Anyway, at some point you get a first officer who is not also a department head, with his/her own seat on the bridge. E.g., Galaxy class, 2350's. It "makes sense" (read: I'm guessing) that the policy of keeping the captain on the bridge would begin to evolve along with the first officer role.
We are never told exactly what the policy is. From Nemesis:
PICARD: (About new first officer Data.) He's a tyrannical martinet who will never, ever, allow me to go on away missions.
DATA: That is the regulation, sir. Starfleet code section 12, paragraph 4...
PICARD: Mr. Data...
PICARD: Shut up.
So Picard made it seem that he was "never" allowed to leave, but he was also being humorous and possibly exaggerating the extent of the prohibition. Especially since later on in Nemesis Picard says he's itching to drive the Argo and explains, "Captain's prerogative. There's no foreseeable danger." So if there is such a regulation it can apparently be overridden at will.
I think a really great example comes from the Best of Both Worlds pt 1 where Troi (of all people) gives us a solid clue:
RIKER: I'm leading an away team over there to get the Captain back. We'll find a way to bring them out of warp. Ensign Crusher, you continue to assist Mister La Forge. Commander Shelby, you'll take the Bridge and coordinate with Starfleet. Data, Worf, Doctor, you're with me.
SHELBY: Excuse me, sir. With my knowledge of the Borg
RIKER: Those are my orders, Commander.
TROI: Commander Riker. It is inappropriate for you to lead the away team. Until the return of Captain Picard, you are in command of the Enterprise. We're in a state of war, and your place is on the Bridge.
RIKER: Commander Shelby, you'll lead the away team. Make it so.
But on the other hand, in Time's Arrow pt 1:
RIKER: I'd be more comfortable if you'd monitor our progress from the Bridge, Captain.
PICARD: I have reason to believe that my presence on this mission is imperative.
PICARD: Yes. Mister Worf, you will report back to the Bridge.
WORF: Sir, as Chief of Security, my place is at your side.
PICARD: The security of the Enterprise is of paramount importance, Mister Worf.
WORF: Yes, sir.
So even when there is a potential threat, the captain can still override whatever policy or regulation there is.
So, apparently Starfleet saw an advantage in having a dedicated first officer as an option depending on mission need (including starship size). This might not have kicked in even as late as Narendra III (2344), but the first Galaxy class ships (with a seat for a dedicated first officer) was built in the 2350's. Even so, the Defiant and DS9 station and various other craft maybe including Excelsior class starships that were still operating well into the 24th century still do not have a dedicated first officer. But nonetheless the role of first officer as a command officer and not just a glorified department head justifies a policy of keeping the captain on the bridge and not on away missions. I know I'm garnering a lot from the lack of a chair, but like I said it's just a thought.