You can do all of these things, but don’t expect it to do any good. For one thing, she doesn’t have the ability yet to empathize with other people. So she won’t be concerned about how blame makes others feel. For another, she lacks the ability to have foresight. She can reason out “If I leave the light on, I’ll have to pick weeds later”, but she can’t reason “If I run too fast through the house, I might trip into the wall.” The difference is that the former is a concrete lesson that can be taught and ‘rehearsed’. The latter requires her to reason out things that she’s never previously connected.
As an example, one day at work, Shane (age 3) had his milk cup too close to the edge of the table. I said
“Shane, what do you think might happen if you leave your cup that close to the edge?” Shane stared blankly at me.
I gave a hint: “What happened two days ago when you did that?” Blank stare. He studied my face, searching for an answer in my emotions and expressions, but he couldn’t find one.
“Did the cup fall to the floor?” A subtle nod.
“So what do you think you should do about it?” 
“:sigh: Put you cup in the middle of the table.” He complied quickly, and seemed to wonder why I didn’t just say that straight out.
The problem was that Shane had never connected open milk cup, edge of table, and carelessness with Cup will fall and I’ll make a mess. These variables didn’t mean anything more to him than the fact that the cup was yellow, or round, or it was lunch time, or anything else. Why? For two reasons: His brain isn’t developed enough to think that abstractly, and he hadn’t experienced a spilled cup of milk enough times to notice what variables are associated with it.
So back to your scenario:
She assigns blame to things because it helps her explain the situation to herself. She thinks: “Am I a cookie-dropper? No. Then why did the cookie fall down? Since I didn’t will it, the cookie must have. It’s the cookie’s fault. Stupid cookie!” and she thinks “Since I don’t normally stub my toes on walls, the wall must have desired to be in my way. Stupid wall!”
Now there’s a simpler, more obvious reason this could be going on, as well: Someone in her environment has a habit of blame-shifting. So, seriously, do you or your wife often blurt out things like “Stupid remote control”, “Dumb thermostat”, or “Damn snow”?
To treat the former cause, you have to do two things. 1) Train her to avoid bad scenarios in the first place. Tell her “Don’t run in the house” and “Eat over the table”. Include the consequence you seek to avoid. “…or you’ll fall down.” “…so you don’t drop your cookie on the floor.” 2) Let her grow up. Everyone grows out of this in time. We eventually develop that mental “external view” or situations and act accordingly. This is a common phase, I assure you.
To treat the latter cause, well…that should be obvious. Quit blaming inanimate objects!
Chessic Sense, former preschool teacher.