I find the best way to avoid the grid is to avoid patterns that stand out. When you're working with a tile, avoid having one thing that's larger, or a different color, or smaller. For example with grass, your best bet is to make all the blades somewhat evenly sized. You can vary them in size, but the larger you make some blades of grass, the smaller you'll eventually have to make the others because of lack of room. This 'causes an obvious grid effect as the larger blades of grass develop a pattern that grabs the viewers attention, and the rest of the tile is drowned out.
Variation, but with subtlety.
Also, most of the time people succumb to the grid because of the edges of the tile. When you create a tile you're working with just one individual tile. Thus you can't see the effects of it tiled until you're done working with it. So you focus on the center and suddenly you tile it and the edges form a grid because they were neglected. Your best bet to overcome this after you're done working on the center, cut the tile in half and shift one half to the other side so the edges are touching. Do this both horizontally and vertically. There's an image of how to do this floating around made by another member, but I'm not sure where to find it.
Also, the less tiles you have to work with, the better incentive to do something simpler. It's going to be very hard to get a good grass tile with the amount of detail you're attempting unless you add more tiles to the mix.