We use the direct grant / resource owner token flows for some select applications.
The main challenge we had was making sure clients handled any required action responses and in some cases we even customized the token endpoint to add additional error information (mostly in headers to not diverge from the oauth spec). In my opinion it mainly just complicates the authorization flows that you have to support all the same interactions that a web flow supports (update profile, password expiration, etc.)
Another thing we did was made sure the was not full scope and only grant roles that were specific to the resources that we were exposing.
On the sensitivity of the tokens, even in browser flow you can easily pull the access token network auth headers, so I don’t think it’s relevant to the security of the direct vs. code browser flows. I’m not an authority, but from experience our attackers
-- Phil