Multiplication - we taught skip counting and then repeated addition. Since your son is getting the concept quickly, you can expand his basics to 0 times tables (this worked well using the repeated addition method - add nothing 8 times and you are left with nothing. add nothing 100 times and you have nothing etc). Then, introduce 1 times tables, 100 times tables, then 5 times tables and 2 times tables. We did skip counting by the corresponding number before starting on each table.
When it came to memorizing them all, DS had big trouble with 7 times tables. I finally bought a mnemonics based program called "Times Tales" and he picked it up on the 3rd day of using that program. After this, I bought Singapore Math, Miquon with cuisenaire rods and DreamBox to reinforce the concepts.

As for division, we waited a bit for the multiplication to sink in. then, I used food analogies - a box of 20 oranges and 2 friends and each had to get an equal share because it would be unfair otherwise - how many would each get? The concept of being "fair" while distributing a group of things amongst friends seemed to click. For variety, we varied the food that we were discussing, sometimes it was a bunch of Hot wheels, sometimes it was a group of birds sitting on a branch - but to explain that division meant equal parts, we always stuck to the "be fair to the recipients" rule. Division came to DS much quickly than other concepts because we used stick figures with names written on them and gave each of them an equal and fair share of the food or toy in question.