easiest way to clear a canvas is to use the context clearRect function and pass the canvas co-ordinate space width & height. This would clear the entire canvas. And you can redraw the shapes you want to remain on screen.
You can also clear portion of a screen, using the above function by passing the position and size of the ellipse you draw but if there are multiple shapes in that position then they would also get erased, you will have to manage redrawing them.
check out the canvas sample in gwt-examples, it gives a very good demo of how to use front and back canvas for complex rendering. Using this technique gives you smooth graphics and also better performance.