The problem with this is that there is no way to verify that the action was performed based on user interaction, unless the OS interrupts the app every time it does something "suspicious" to ask for the user's permission. This doesn't work, because then the UI has a horrible interface that bothers you about things all the time.
The only information the OS has is that the app requested permission to dial phone numbers and the user hit "ok" to allowing that kind of access when the app was installed. Something you *might* want to do is have a separate security level for dialing when the phone is idle. (I have no idea if Android does this or not) Don't disallow it completely! what if I want an app to call my wife and remind her of something at a certain time? What if I'm paranoid about getting kidnapped and have a deadman switch app that calls someone and lets them know where I am if I DON'T enter a code into the phone once an hour? These are real (if odd) use cases.
Here's an example of why your plan doesn't work. Let's pick on google maps, and assume it's a malicious app. It isn't allowed to dial phone numbers unless the user is interacting with the app at the time. So you're driving somewhere and using the phone for navigation, you've met the requirement, so the app strikes! It calls a phone sex line while you're driving and gets you billed for it! There's fundamentally no way around this while providing powerful features and a good user interface.
If the app is malicious and you trust it, there is nothing the OS can do to protect you except for just disabling all the functionality you bought the thing for in the first place. (I'm hoping that smartphones in general allow you to disable functionality that you aren't comfortable with, if not that's bad, but a separate issue)
There are certainly things you can do to help reduce the exposure of the user, like only allowing programs to dial when the phone is in interactive mode (unless it specifically requested permission to do THAT), but in general, they are doing what they can to provide the user with the information they need in order to make an informed decision.
Sure that list is intimidating, but if you can't figure out why an app needs access to certain functionality, then you shouldn't install it, duh. It's up to the app author to clearly explain why it needs that access, and what it does with it that you just can't live without. Also they need to somehow establish their credibility. But that's a separate issue, partially addressed by the official app marketplace.