G Street pretty much has the market cornered for full service fabric stores in the DMV. If you do go there the upholstery fabric is not cheap, but if you’re talking about the seats of dining room chairs you won’t need a lot. Sign up for their email list, they almost always have a coupon. I never go there without one.
G St also has a large sale section where all fabric is $2.96/yd, that includes ample upholstery fabric.
This might not work as well as G St, but the wonderful sewing studio Bits of Thread, right smack in the middle of AdMo, has a mini shop that is all donated fabric and notions. I’ve been a number of times and they have an impressive selection for the space and considering it’s all donated. The shop is open whenever the studio is. http://www.bitsofthread.com/
There is a Calico Corners in Friendship Heights, this place is only upholstery fabric. A lot of it is stodgy, but they’ve come around in recent years and have quite a bit of up to date stuff. Also, sign up for their email list to get coupons. I bought all of my fabric for a reupholstery project and pillows at Calico.
Do NOT order from Joanns.com it is terrible!!! I had the worst experience with them I have ever had ordering online. Stores are fine, but not extremely well stocked with upholstery fabric and the staff is barely competent.
But I would recommend fabric.com as a good resource. You can order samples to get a better feel for the weight of the fabric and the true color. West Elm also sells some of their upholstery fabrics online.