I would like a method for computing $\pi$ for which I have an explicit bound on the error, and that has the property that if I do the calculation up to a certain accuracy, but then need an arbitrarily finer accuracy later, I can pick up the calculation process where I left off rather than having to start over from scratch. In light of the second requirement, I don't want to have to deal with, say, square roots, because whatever accuracy I calculate the roots to in order to reach some desired accuracy for $\pi$, there is some finer accuracy for which the root approximations already used would have needed to be more accurate. I believe I'll want to stick to algorithms for which the operations required are limited to arithmetic on rationals in order to avoid such issues.
The Maclaurin series for $4\arctan(1)$ is an example of an algorithm that obeys these properties: $$\pi=4\arctan(1)=4\sum_{n=0}^\infty\frac{(-1)^{n-1}}{2n+1}$$ Provided I save the value of $n$ for the last term I added, it's easy to resume the calculation, and I always know that the magnitude of the error is less than that of the next term.
However, I know that this algorithm converges very slowly. What contenders are there for faster algorithms that obey the desired constraints? It sounds like an unbounded spigot algorithm would work, but if I'm not mistaken, those are subject to more constraints than I care about, so maybe it's possible to do better.
I've decided to use the BBP formula, linked by Alex D in the comments: $$\pi=\sum_{k=0}^\infty\frac{R(k)}{16^k}\text{ where }R(k)=\frac{4}{8k+1}-\frac{2}{8k+4}-\frac{1}{8k+5}-\frac{1}{8k+6}$$ I get an error bound by noting that $$R(k)>\frac{4}{8k+1}-\frac{2}{8k+4}-\frac{1}{8k+4}-\frac{1}{8k+4}=\frac{4}{8k+1}-\frac{4}{8k+4}>0$$ so each term of the series is positive and the sequence of partial sums increases monotonically. Taking for granted that the series does in fact converge to $\pi$, this means that every partial sum is an underestimate, and the error of the $n$th partial sum is equal to its tail. $$R'(k)=\frac{16}{(8x+4)^2}+\frac{8}{(8x+5)^2}+\frac{8}{(8x+6)^2}-\frac{32}{(8x+1)^2}=-\frac{122880x^5+354816x^4+405504x^3+228616x^2+63328x+6853}{(2x+1)^2(4x+3)^2(8x+1)^2(8x+5)^2}$$ which is negative for all $k\ge0$, so $R(k)$ strictly decreases over that range, and we have this for the tail of the $n$th partial sum: $$\sum_{k=n+1}^\infty\frac{R(k)}{16^k}<R(1)\sum_{k=n+1}^\infty\frac{1}{16^k}=\frac{106}{819}\left(\sum_{k=0}^\infty\frac{1}{16^k}-\sum_{k=0}^n\frac{1}{16^k}\right)=\frac{106}{819}\left(\frac{1}{1-\frac{1}{16}}-\frac{1-\frac{1}{16^n}}{1-\frac{1}{16}}\right)=\frac{106}{16^{n-1}*12285}$$