As canaaerus says the control points option is the way to go. To reproduce the ul direction use a point of the form (-x,x) and for the ur direction (x,x). The standard size is produced with x roughly 10. Now with the correct syntax you can write
\documentclass{article}
\usepackage[arrow, matrix, curve]{xy}
\begin{document}
\( \begin{xy}\xymatrix{ e\ar @`{(-10,10),(10,10)} }\end{xy} \qquad
\begin{xy}\xymatrix{ e\ar @`{(-20,20),(20,20)} }\end{xy} \)
\end{document}
and get

To make this narrower, reduce the size of the x-coordinates of the control points
\( \begin{xy}\xymatrix{ e\ar @`{(-10,20),(10,20)} } \end{xy} \)

See the manual of xypic, particularly the section on curves, for more information about control points.
Note that if you wish to place such arrows at a different node of your \xymatrix then you should be careful about absolute vs. relative coordinates, one way to deal with this is to package the node into an \xybox. Here is an example, including the node formatting in your original question:
\documentclass{article}
\usepackage[all]{xy}
\begin{document}
\( \begin{xy}\xymatrix{ \xybox{ *=+[o][F]{e}\ar @`{(-10,10),(10,10)} } &
\xybox{ *=+[o][F]{e}\ar @`{(-20,20),(20,20)} } }\end{xy} \)
\end{document}

and here is a further example demonstrating that xypic treats these nodes correctly in that arrows point to the circled node:
\documentclass{article}
\usepackage[all]{xy}
\begin{document}
\begin{displaymath}
\begin{xy}
\xymatrix{
\xybox{ *=+<12pt>[o][F]{e}\ar @`{(-10,10),(10,10)} }
\ar[r]^\pi
\ar@{.>}[rd]_q &
\xybox{ *=+<12pt>[o][F]{g}\ar @`{(-20,20),(20,20)} } \ar[d]^p \\
& \xybox{ *=+<12pt>[o][F]{f}\ar @`{(-10,-20),(10,-20)}|a }
}
\end{xy}
\end{displaymath}
\end{document}

Notice that I have used +<12pt> to get larger circles around the nodes.