I asked this question because I battled a Mew that had a Substitute up. Then I used Grass Knot, and it did barely any damage. I couldn't figure out who affected Grass Knot's power.
A substitute doesn't have a weight, so it will still do damage based on the Pokemon. Since Mew is very light, only 4kg (8.8lbs.), grass knot didn't do much damage. For all pokémon lighter than 10kg (21.8lbs.), it only has a base power of 20. That was why it hardly did anything to the Mew. Source The other one
I would guess no, the substitute has no known weight. Using grass know would do the more damage according to the Pokemon behind the substitute. If it was based off of the weight of the substitute it would give a slight advantage to bigger Pokemon with substitute.