I have been thinking about the same thing for one of my games, but without success... yet.
YOu might want to look at a payer controller asset on asset store with a Ninja character that can jump and climb up walls a la Lara Croft.
Theoretically though, I think you might want to just look at adding to you controller a vertical movement, WHEN the character is within a specific trigger zone, so surround all your climbable areas with a trigger area and do a movement in the up direction when button input is received... you probably have to turn off gravity at the same time, but if it only occurs IFF climb button is down, and gravity is re-applied on release, and player falls. YOu say this resulted in player floating?, but presumably this is because you controller is still active in other ways? In other words turn on a bit of hard coded animation while climbing?
Let us know how you get on, need this too!
Mark