What a coincidence, my friend is a Science teacher and teaches 7th grade!
Anyway, I have a 2 year old. He likes bugs... I got a cool bug bottle for him from amazon.com, and we collect bugs... I teach him the names for them and the different kinds... he can 'name' them and when I say an insects name, he will point to it in books, which he also enjoys reading. He knows all about insects now! And, I buy crickets from the pet store as 'his' pet... and we feed them and he really likes it. It's a natural way of "learning"...
Also, with any toy he has, I teach him his colors... and then ask him to point to other things with the same color. I also teach him 'counting' and he already knows 1-10... and he will actually tell me or point to the number in a book, or on house mailboxes etc.
Anything fun is an opportunity to teach them anything... it doesn't have to be a "curriculum" per say... just play-teaching.
Also, they love to finger paint... but to have less mess for me, I put him in the tub or shower enclosure in just his diaper, and let him paint. He can get messy and so what, he's in the tub! Then I just wash everything off, and him too, afterward. And he gets his 'bath' at the same time. THEN, while painting, I teach him 'colors' and scribble shapes on the paper like 'square', 'triangle', 'circle' etc. and let him 'mimic' me and have him try to "draw" the same thing the best he can. It's fun and he gets proud of himself too.
My son also likes playing "Simon Say's"... it teaches them how to follow simple requests and how to 'name' their body parts and all the while having "fun."
My son is also at the stage that he likes to help and "cook" with me. So, I just let him 'make' things and then I name the cooking utensils, show him how to 'stir' etc. It's good for them to do an assortment of things like this. I also give him the salad spinner, and he spins the lettuce for me. All of this IS learning and "teaching" them.
Or coloring books...then as he's coloring it helps his fine-motor skills too, and then name things as he colors. Ask him questions about it... like "is that a big or small dog?" "What color is that?" "is that the sun or the moon?" etc. Then it helps them reflect and 'think' about what they are doing... bringing it on to another level of "learning."
My son also LOVES doing anything with a ball. He can even hit a ball we toss him with a 'bat." Doing things with balls... like bowling is fun too.. and helps their coordination and focusing. It also teaches them how to manage if they "miss" a ball etc. All great skills, emotionally.
Also, with sidewalk chalk, I draw shapes on our patio... then I put numbers on them... and he hops hops hops onto the "shapes" and then I say the numbers out loud to him at the same time. Then as a variation, I clap a rhythm and have him "hop" to this... and when I 'stop' he is supposed to stop too. Then we start again... it's real fun.
There's tons of things you can do, without having to spend money...at this age, just exposing them to things. Sometimes we just lay out on our backs on our lawn and look up at the sky.. and I just ramble on talking story with him and "pondering" things out loud, then I will say "what do YOU think?" And whatever he says is great... it 'teaches' them to have their own thoughts and to pretend...
Pretend play is a GREAT learning activity for any child. Play tea with him.. .my son loves this too.
Just some other ideas.
Good luck,
Susan