You're right, it does make a difference which sets the cards come from because of the reason you pointed out with the two Murkrows; cards get reprinted, and often times they are different from their original printing. This is why we have what's called "Modified" and "Unlimited" sets.
Modified refers to the cards that are considered legal to play under official Pokemon League rules. You can only play cards from the modified set if you want to enter the League and play officially. The modified set changes each year, and phases out one or more older sets while phasing in the newest sets. For this season, you are allowed to play any cards from Diamond & Pearl and upwards to Arceus. This is how they deal with the fact that cards printed from older sets are sometimes different from newer cards. Here's the Bulbapedia article:
https://bulbapedia.bulbagarden.net/wiki/Modified_format
To play an unlimited game, however, you can play any cards from any sets. This is what you would do if you two just want to play at home for fun, not to bring your deck to League. It would require some rule-inventing on your part, on how you would deal with issues like the one you pointed out. Here's the Bulbapedia link:
https://bulbapedia.bulbagarden.net/wiki/Unlimited_format_(TCG)
So, if your son wants to go to his local League one day (which he probably will), you should start playing with a modified deck, which means only playing cards from sets of Diamond & Pearl and upwards Arceus, the most recent set. There are many ways to build decks; you will probably be creating a "Rogue" deck, which consists of cards that you hand-choose yourselves. If you decide to stick with the game and want to advance, you can research decks that other players have come up with and are using in the larger tournaments.
Let me know if either of you need clarification on anything here, or on something else.