It depends on the type of fabric you are looking for. Edinburgh Fabrics up the bridges at St Patrick Square has dressmaking and some patchwork fabric. Also The Cloth Shop at Bonnington Road has dressmaking, curtain and some patchwork fabric. The only other shops in Edinburgh I know of, are Fabric Focus, My Bear Paw and Edinburgh Patchwork, but don't know the extent of their stock as I have never visited.
If you can make it to Linlithgow, Purely Patchwork is a lovely shop with a good selection of (patchwork) fabric.
Other than that, as Rowe1311 says, there is Mandors in Glasgow. Just outside Glasgow, at the garden centre in Milngavie, there is a 'cottage' beside it which has a very good selection of patchwork fabric and books, called Kaleidoscope (website kalquilts) with a huge selection of batiks.