A variant that centers the email address under the postal address and keeps \qquad as separation to the phone number and the home page.
\documentclass[11pt,letterpaper]{article}
\usepackage{fullpage}
\usepackage{amsmath}
\usepackage{amssymb}
\pagestyle{empty}
\raggedright
\newcommand{\lineunder}{\vspace*{-8pt} \\ \hspace*{-18pt} \hrulefill \\}
\newcommand{\contact}[5]{
\vspace*{-8pt}
\begin{center}
{\LARGE \scshape {#1}}\\
#2 \lineunder
\sbox0{#4}%
\centerline{%
\hbox to .5\dimexpr\hsize-\wd0{\hfill#3\qquad}%
\usebox0 %
\hbox to .5\dimexpr\hsize-\wd0{\qquad#5\hfill}%
}%
\end{center}
\vspace*{-8pt}
}
\begin{document}
\contact{First M. Last}
{Address, City, State Zip}
{(123) 456-7890}
{email@mail.edu}
{http://www.webaddress.html}
\end{document}

Rewritten as "pure LaTeX":
\documentclass[11pt,letterpaper]{article}
\usepackage{fullpage}
\usepackage{amsmath}
\usepackage{amssymb}
\pagestyle{empty}
\raggedright
\newlength{\emailwidth}
\newlength{\partialwidth}
\newcommand{\lineunder}{\vspace*{-8pt} \\ \hspace*{-18pt} \hrulefill \\}
\newcommand{\contact}[5]{
\vspace*{-8pt}
\begin{center}
{\LARGE \scshape {#1}}\\
#2 \lineunder
\settowidth{\emailwidth}{#4}%
\setlength{\partialwidth}{\linewidth}%
\addtolength{\partialwidth}{-\emailwidth}%
\setlength{\partialwidth}{.5\partialwidth}%
\parbox{\linewidth}{%
\mbox{%
\parbox{\partialwidth}{\hspace{\fill}\mbox{#3\qquad}}%
#4%
\parbox{\partialwidth}{\mbox{\qquad#5}}%
}%
}%
\end{center}
\vspace*{-8pt}
}
\begin{document}
\contact{First M. Last}
{Address, City, State Zip}
{(123) 456-7890}
{email@mail.edu}
{http://www.webaddress.html}
\end{document}
The next variant is probably much easier to understand:
\documentclass[11pt,letterpaper]{article}
\usepackage{fullpage}
\usepackage{amsmath}
\usepackage{amssymb}
\pagestyle{empty}
\raggedright
\newcommand{\lineunder}{\vspace*{-8pt} \\ \hspace*{-18pt} \hrulefill \\}
\newcommand{\contact}[5]{
\vspace*{-8pt}
\begin{center}
{\LARGE \scshape {#1}}\\
#2 \lineunder
\makebox[0pt][r]{#3\qquad}#4\makebox[0pt][l]{\qquad#5}%
\end{center}
\vspace*{-8pt}
}
\begin{document}
\contact{First M. Last}
{Address, City, State Zip}
{(123) 456-7890}
{email@mail.edu}
{http://www.webaddress.html}
\end{document}
However, the disadvantage of this solution is, that TeX does not warn, if the phone number or the home page is too long to properly fit in the line. Therefore the first solutions are a little more complicate, because they additionally define the space that is allowed for the phone number and the home page.
\lineunderrule hangs into the left margin but not into the right one? – Qrrbrbirlbel Oct 3 '12 at 0:51\usepackage[showframe,pass]{geometry}in your preamble and you can see it for yourself.\hspace*{-18pt}puts the line18ptinto the left margin. Repeat it after\hrulefillto get the same effect on the right side. – Qrrbrbirlbel Oct 3 '12 at 1:17\lineunderis also used as part of section headers that hang into the margin. I just didn't realize it because I thought it was working the other way, i.e. the rest of the text was indented. – Joe Oct 3 '12 at 1:33