I just looked at this again and think I have figured out what is going on. You were right, both that it was using the hyperlink class "whtbtnshow" and that it was using the default IE font (Times New Roman). I think because my Normal font was Arial and the whtbtnshow font was Arial, it was ignoring the font when it converted from WebHelp to CHM, and, therefore, was displaying the default IE font instead. (It did pay attention to the size of the whtbtnshow.) My solution was to change the font of whtbtnshow to something other than Arial, but something that matches Arial better than Times New Roman. This isn't perfect, but will work for me. Thanks for your help!
Ah, mysteries. 
I did some more digging. The Show/Hide text won't pick up your Normal style as the text it isn't wrapped in a p tag, which is what Robohelp "normal" is.
The only time I can reproduce what you see is when I don't have a font specifically defined for both the body tag and .whtbtnshow class, or I have Times New Roman set on the table tag.
I'm not sure if that helps you, but it's some more information for someone in future.
Oh, and for those who aren't comfortable with editing the css file, the body tag can be found in the Styles dialog box under Other > Background + Text (BODY).