R.L.
Sounds like he may be bored with the process (at least the math part). I used to tutor math (grades 1 - 12), and I would see this in kids who are actually pretty bright, but feel like once they've shown you that they know the concept, they don't want to have to keep practicing the mechanics. I've known kids with near-genius IQs (like my own DS!) who would be failing simply because they were too bored and undisciplined to complete homework assignments -- it can definitely be a challenge!
The trick is to keep changing up the process. Often, a more tactile approach works well. Instead of drawing pictures, use objects and work the teaching into everyday activities. Try to tie it in to a favorite toy or hobby. For example: "This lego toy needs 3 pcs that look like this, and 2 pieces that look like that. So how many pcs do we need to find all together to get started?" "That football team has made 2 touchdowns. They got 7 points for each touchdown, so how many points do they have now? The team they're playing against has 17 points. How many more points does the first team need to get to tie? How many to get ahead? Do they need to kick a field goal, or make another touchdown?"
Game playing is another great approach. Check out an educational toy store for games that teach math skills in a fun way. Take your son with you and let him pick out a game that sounds interesting. Any converntional game where you need to keep score by constantly adding and calculating, like Monopoly, also works well. A great card came for teaching addition, especially mental math, is Cribbage. I used to use educational computer games that were quite effective, like Operation Neptune, because you had to be able to solve the math problems quickly to advance your character and not get munched by giant octopi and things. I also highly recommend getting a book on mental math skills. Kids who learn to do math in their heads are a rarity these days, but once they learn the tricks, they can really excel beyond their peers.
If your son is movement-oriented, play into his motor skills. Invent your own games where he gets some amount of points for achieving some kind of goal, and set a total goal he needs to get to. To achieve the goal, he not only needs to make the points, but figure out how to add what he's achieved along the way. "Each basket you shoot from this line is worth one point, from that line is worth 2 points, and from over there is worth 3 points. You have to should 15 points to win the game, but you only win if you keep score and get it right. I'm going to play too. If I get 5 more points than you do at any time, I win, so you have to keep track of my points, too." As he gets the hang of this, encourage him to make up his own games that require math skills.
As for the general attitude problem, try to set up a system of combined positive and negative reinforcement, with clear rewards and repercussions. When your son is cooperative, he gets a happy face sticker on the "cooperation chart." When he's not, he gets a frowny face. Offer a *small* reward if he has more happy faces than frowny faces at the end of day, then every 2 days, 3 days, week, etc. The reward can be something like a trip to the toy store to buy a $5 toy, or dinner on the couch with a video instead of sitting at the table, or a special treat of staying up an extra 1/2 hour to play a game. Another method I would use for behavior modification would be to give my kids 10 pennies, nickels, dimes, or quarters (depending on age and financial sophistication!), with a clear explanation of what they needed to do to keep the money. Every time they broke whatever the rule was, they had to give up one of the coins. They could keep any coins they had left at the end of the day. Start with a fresh set of coins on day two, three, four, etc., because this teaches them that no matter how badly they might have messed up on one day, you know they have the capacity for improving at any time. When they get to the point of being able to keep all or most of the coins for a day, lengthen the time to 2 days, 3 days, a week, etc. Keeping the day's worth of coins in a pocket where they are tangible and can be felt all the time serves as a good reminder of why they're there, and what the expectation for behavior is.
Of course, no kid is going to be cooperative all the time -- we all have our moments! I found that giving my children 2 or 3 options for an action at the most, all of which were acceptable to me, worked well for getting them to cooperate. They felt like they had some power and independence, and I got them to do what needed to be done! For example, when they were toddlers, I would give them the choice of wearing red shoes or blue shoes, but never asked them to please put on their shoes, because that type of question would just generate a "No!". As they got older, choices became things like "do you want to do your homework here, or in your room?" Not, "do you want to do your homework now or after dinner?", because with the latter option, they could try to weasel out of completing it at the later agreed-upon time.
My last suggestion to you is to get a copy of the book "How to Talk so Kids Will Listen, and Listen so Kids will Talk." by child psychologist Adele Faber. Read it, and put at least some of the techniques into practice. It can really help.
Good Luck!