The company I work for charges a 6% "service fee" to run credit cards for me and that's at the high end of reasonable. Though they also will cancel your contract if you use something like square but I think that's mostly for the customers' benefit so they don't have to worry about dodgy charges and not because they really want the 6%.
All in all they usually get a lot more than 20% of my gross income (unless I have a really good day) but they provide almost everything I need to do my job.
You're business has to be centered around charging for calls in order for EagleDial to make sense. But for those use cases we believe we provide a lot of value.
edit: I'd be happy to hear more about what you do, and how we can improve EagleDial. Please send me an email on danielk@eagledial.com if you're interested in talking more.