How do I recognize when my approach is over-counting, and how to avoid it? I'm wondering how to avoid over counting and recognize when I'm over counting. Here are some examples in which I over-count.
Example one:
How many hands of $5$ cards are there were no two have the same number. 
Here is my approach:

Let the #: no two have the same number $=N$.
Work with the complement "Two have the same number".
$N={52 \choose 5}$-Two have same number
To get the same number twice. First choose a number $2-10$ for a total of $9$ choices (I don't count an ace as a number). Then choose $2$ cards out of $4$ with that number. Then choose $3$ cards from the remaining $50$.
$${52 \choose 5}-9{4 \choose 2}{50 \choose 3}$$

I realize this over-counts as it counts 2 heart, 2 spades, 2 diamonds, 3 hearts, 4 spades different from 2 diamond, 2 spades, 2 spades, 3 hearts, 4 spades.
This is quite troubling for me because I don't know how to recognize when I over count nor do I know how to fix this.
Example two:
How many hands of $13$ contain at least $3$ cards from every suit.

Pick $3$ cards from each suit: ${13 \choose 3}$. Then pick a card from the reaming $52-12=40$: ${40 \choose 1}$. That gives ${13 \choose 3}^4(40)$.
 A: 1*. (Treating the whole deck as "numbers" as pointed out in a comment below). We choose $5$ types of numbers out of $13$ distinct numbers in a deck and then we multiply by $4$ five times as every number we selected can be represented by $4$ suits and all combinations are possible, all in all $4^5 {13 \choose 5}$ as @DougM suggested.
1.($9$ numbers from $2$ to $10$, $4$ face cards). Among the drawn cards there can be between $0$ and $5$ numbers, for $i \in \{0,\dots,5\}$ we first determine the distinct numbers that were drawn: $9 \choose i$, every number could be one of $4$ suits, so we multiply by $4^i$ and then we multiply by the possibilites for the remaining $5-i$ cards to be drawn from the $16$ not-numbers, which is ${16 \choose {5-i}}$, for all $i$'s we get $\sum_{i=0}^5 4^i {9 \choose i}{16 \choose {5-i}}$.
What prevents you from overcounting here is introducing the $i$ parameter which helps you consider the cases.
2. Multiplying by $40$ is not the best idea as these $40$ cards are of different suits and everything could get mixed. We should restrict ourselves to choosing the appropriate number of cards only within every separate suit, and how to determine these numbers? There need to be at least $3$ from every suit, so that makes $4*3=12$ out of $13$, the remaining $1$ card makes one $3$ a $4$ ($4$ cards are drawn from one of the suits). Altogether: $$4{13 \choose 4}{13 \choose 3}{13 \choose 3}{13 \choose 3}.$$ We multiply by $4$ as there are $4$ possibilities to choose the suit from which $4$ numbers are drawn.
What makes this problem not that complex is that there is only one distribution $(4, 3, 3, 3)$ of cards drawn from suits. Should the exercise say "at least two", there would be more possibilities, e.g. $(7,2,2,2)$; $(6,3,2,2)$; $(5,3,3,2)$ and so on, we'd have to count the possibilites in every case and add them up to get the final result.
