If it's your first time or even only a couple suits in, always buy more than you need in case of a messed up pattern. Hell I've made a lot of suits and I still buy (usually) and extra yard of everything just in case. That said, for a partial of one colour I'd say maybe 3 yards to be safe. It's overkill unless you've got a huge tail, as I'm about 5'5" and can make pretty much a whole suit out of 3 yards if I don't mess up, or something close to a full suit if I have digigrade legs. For foam it's hard to say because it can totally vary depending on how big you make anything and what your local foam places have in stock (unless you buy it online but honestly I never have). If you can, find a couch-cushion shop or something similar. Near my house there's a place called Creative Foam and Futon that basically is JUST a foam shop that you go to to buy new couch cushions and replacement inserts for seats and stuff. They cut foam for people, and have a ton of left over scraps of foam (big pieces too) for SUPER cheap. I get almost all of my foam from them. Joann's has been way too overly expensive for me lately unless you get them on a sale or coupon day. Again, I can't really say as to the amount you should buy. I can, however, say to buy thicker if you can and cut it down as opposed to layering thinner stuff because that can get messy and annoying, but it's honestly just a design preference. I SOMETIMES build up layers, like on heads sometimes, but in general I try and buy thick blocks and just carve out of that. That's how most other people work too, I believe. Then if you mess anything up you can just get a super thin layer of foam (I always keep some of the really thin stuff around for this) to shore up anything that's amiss.
Hope that helps!