The line from (5,8) to the starting point of the partial ellipse is not drawn but part of path A. The same happens for (5,0) and B.
Maybe you can use (5,8) and (5,0) as values of option shift. Then the starting point of the path is the same as the starting point of the drawn partial ellipse:
\documentclass[11pt]{amsart}
\usepackage{pgfplots}% loads also tikz
\pgfplotsset{compat=newest}% to avoid the pgfplots warning
\usetikzlibrary{intersections, pgfplots.fillbetween}
\pgfdeclarelayer{pre main}
\begin{document}
\begin{tikzpicture}
\pgfsetlayers{pre main,main}
\tikzset{partial ellipse/.style args={#1:#2:#3}{ insert path={+ (#1:#3) arc (#1:#2:#3)} } }
\draw[name path=A, shift={(5,8)}, partial ellipse=180:360:6cm and 1.5cm];
\draw[name path=B, shift={(5,0)}, partial ellipse=180:360:6cm and 1.5cm];
\tikzfillbetween[of=A and B]{blue, opacity=0.1};
\end{tikzpicture}
\end{document}
Result:

Additional remark regarding a comment below:
You could also fill the region using patterns:
\documentclass[11pt]{amsart}
\usepackage{pgfplots}% loads also tikz
\pgfplotsset{compat=newest}% to avoid the pgfplots warning
\usetikzlibrary{intersections, pgfplots.fillbetween}
\usetikzlibrary{patterns}% <- added
\pgfdeclarelayer{pre main}
\begin{document}
\begin{tikzpicture}
\pgfsetlayers{pre main,main}
\tikzset{partial ellipse/.style args={#1:#2:#3}{ insert path={+ (#1:#3) arc (#1:#2:#3)} } }
\draw[name path=A, shift={(5,8)}, partial ellipse=180:360:6cm and 1.5cm];
\draw[name path=B, shift={(5,0)}, partial ellipse=180:360:6cm and 1.5cm];
\tikzfillbetween[of=A and B]{pattern=vertical lines, pattern color=red!50!black};% <- changed
\end{tikzpicture}
\end{document}

\draw[green,name path=A] (0,2) arc [start angle=180, end angle=360];\draw[green,name path=B] (0,0) arc [start angle=180, end angle=360]; \tikzfillbetween[of=A and B]{blue, opacity=0.1};. You need àlso the packages\usepackage{pgfplots}and\usetikzlibrary{intersections, pgfplots.fillbetween}. – Bobyandbob Jul 21 '17 at 06:44