In terms of practical meaning, there is no real difference. Both sentences mean that the speaker feels, for reasons he finds within himself, that this is the best thing to do.
The difference is a matter of nuance:
"To feel something in one's bones" implies more certainty, and a more solid basis for one's belief, than a gut feeling. "I've re-read all the material, copied over all my lecture notes, and reviewed all the answers I've gotten wrong on the quizzes. I'm going to pass that big exam - I can feel it in my bones!"
Gut feelings are more a matter of intuition, of a conclusion reached without - or even despite - the apparent facts: "Whenever I look at him, he's looking away; and he's always just leaving whatever room I happen to walk into. But I think he's actually attracted to me - I just have a gut feeling about it."