This isn't really a shop and it's only open seasonally, but Daya Perera has the best (and cheapest) Christmas decorations outside of Pettah.
The Stuff
For Christmas lights (Rs. 120 per string), artificial trees (Rs. 6,500+), tree baubles (Rs. 150+ per box), and more, Daya Perera has the best supply. These aren't real trees (you'll need to wait a bit and get them off the street, usually near Town Hall, though those are really branches)... this sentence is too long. These aren't real trees but they have a good range of artificial greenery that doesn't look too artificial (like the stuff on China Street in Pettah).
For baubles and stuff to hang on the tree they can't really be beat in terms of price and quality. They have every color of ornament and they're both cheaper and more durable than anything at Arpico. Their trees go up to 20 feet and they also have poinsettias, wreaths, etc.
The Location
This stuff is basically sold out of someone's garage. The address is 15 T.G. Jayawardena Mawatha. This is the road that comes off Green Path before the Liberty roundabout, turn at the Dwellings, go down about 100 meters, it's a little house on your left, before the next street.
We're giving detailed directions cause it is just a house, but the place is reliable.