You have given tau has a uniform prior from 0 to 1, which implies sigma (1/tau) has a prior from 1 to infinity. So your prior has no probability for sigma less than 1, which means the posterior estimate has to be greater than 1.
If the true value is 0.03 as suggested by the first analysis, then it is impossible for your bayesian analysis to give the correct answer. This is probably why the sd for the sigma estimate is so high.
Suggestions for other priors: I am not an expert. From my reading, I gather that selecting a "non-informative" prior for a variance parameter is not easy.
The book Bayesian Modelling using WinBUGS tends to use tau <- dgamma(.01,.01). Gelman in Data Analysis using Regression and Multilevel/Hierarchical Models tends to use sigma <- dunif(0, 100) (putting the prior on sigma instead of tau).