I think that the mistake you made was giving crackers and cheese in the first place. My DS is the same age as your DD and he has never had a cracker or juice. It's not that I'm completely opposed to them and I would give it if I were in a pinch, but I've never been so in a pinch that water or milk and real food weren't an option. As for cheese, we take the French approach - it's an after-meal delicacy, so that means he gets cheese once he's already eaten a good meal of real food. Same thing with milk - he has that after he eats or within an hour or so of eating a good meal. That way he doesn't fill up.
Of course, he will still be demanding about food. A month or so back when it got really bad and he was pretty much demanding certain things (beans, bread, fruit) and refusing to eat others, I posted on here and took the great advice from a poster to get his whole meal ready and put it in front of him when he sits down. Then, if he asks for something else, I say sorry honey this is your dinner tonight. I put a lot of options out there and so there is always a range of choices he can make, but he learned very quickly that what was there was what there was to choose from and nothing else was going to come out of the fridge or cupboard.