1. The vertical axis should start from zero. The horizontal axis should be extended so that it includes the waist. See Zach's plot http://nodus.ligo.caltech.edu:8080/40m/2818
2. Even if you are measuring only the linear region, you can guess w0 and z0, in principle. w0 is determined by the divergence angle (pi w0/lambda) and z0 is determined by the linear profile and w0. Indeed your data have some fluctuation from the linear line. That could cause the fitting prescision to be worse.
3. Probably the biggest reason of the bad fitting would be that you are fitting with three parameters (w0, z0, zR) instead of two (w0, z0). Use the relation ship zR= pi w0^2/lambda.