The spacing and punctuation issues are associated with patches beamer applies to biblatex bibliography macros for changing colours within bibliography items. These can be found in beamerbaselocalstructure.sty.
Extra whitespace in the first problem is associated with \usebeamercolor. This can be resolved by issuing biblatex's \unspace.
To solve the second problem we can set punctuation before changing the colour. This will suppress any spurious punctuation generated by \newunit or \setunit in the existing drivers and bibliography macros.
Here are some revised patches demonstrating these ideas. A new patch for the labeltitle bibliography macro handles the case where author-year styles use label or labeltitle as a fallback for labelname.
\AtBeginDocument{%
\@ifpackageloaded{biblatex}
{\apptocmd{\blx@env@bibliography}
{\let\makelabel\beamer@biblabeltemplate}{}{}
\apptocmd{\abx@macro@begentry}
{\let\bbx@tempa\@empty%
\usebeamercolor[fg]{bibliography entry author}}{}{}
\pretocmd{\abx@macro@labeltitle}
{\ifboolexpr{ test {\ifcsundef{abx@field@label}}
and test {\ifcsundef{abx@field@labeltitle}} }{}{\let\bbx@tempa\labelnamepunct}}{}{}
\pretocmd{\abx@macro@title}
{\ifcsundef{abx@name@labelname}{}{\let\bbx@tempa\labelnamepunct}%
\bbx@tempa\newblock\unspace\usebeamercolor[fg]{bibliography entry title}}{}{}
\apptocmd{\abx@macro@title}
{\ifcsundef{abx@field@title}{}{\newunitpunct}%
\newblock\unspace\usebeamercolor[fg]{bibliography entry note}}{}{}}
{}}
Instead of editing the beamer style file, you can modify the existing patches just after \begin{document}.
...
\addbibresource{biblatex-examples.bib}
\begin{document}
\makeatletter
\pretocmd{\abx@macro@begentry}{\let\bbx@tempa\@empty}{}{}
\pretocmd{\abx@macro@labeltitle}
{\ifboolexpr{ test {\ifcsundef{abx@field@label}}
and test {\ifcsundef{abx@field@labeltitle}} }{}{\let\bbx@tempa\labelnamepunct}}{}{}
\patchcmd{\abx@macro@title}
{\ifcsundef{abx@name@labelname}{}{\blx@unitpunct\blx@postpunct}}
{\ifcsundef{abx@name@labelname}{}{\let\bbx@tempa\labelnamepunct}}{}{}
\patchcmd{\abx@macro@title}
{\newblock\usebeamercolor[fg]{bibliography entry title}}
{\bbx@tempa\newblock\unspace\usebeamercolor[fg]{bibliography entry title}}{}{}
\patchcmd{\abx@macro@title}
{\ifcsundef{abx@field@title}{}{\blx@unitpunct\blx@postpunct}}
{\ifcsundef{abx@field@title}{}{\newunitpunct}}{}{}
\patchcmd{\abx@macro@title}
{\newblock\usebeamercolor[fg]{bibliography entry note}}
{\newblock\unspace\usebeamercolor[fg]{bibliography entry note}}{}{}
\makeatother
\nocite{Thomas1975,ctan,cms,companion,britannica,kant:ku}
\frame[allowframebreaks]{\printbibliography}
\end{document}
Here's your entry printed with some different bibliography margins.

The patches appear to give the desired effect for standard biblatex styles, but thorough testing is needed. The solution doesn't resolve issues for a few (hopefully edge) cases in biblatex-apa. These include entries that don't have any data to form a label (i.e. labelname, label, labeltitle and labelyear all missing) and biblatex-apa's overriding of useeditor and friends per-entry option settings (e.g. britannica in the above document).
Unresolved issues are probably worse for some other contributed styles. Surely beamer can't account for all of them. Perhaps the best approach is to have style authors tailor the patches as needed.
foobarkey in yourliterature.bib– Seamus May 24 '12 at 14:28beamerversion: might be a bug! – Joseph Wright May 24 '12 at 15:01\newblock\usebeamercolor[fg]{bibliography entry note}in\apptocmd{\abx@macro@title}frombeamerbaselocalstructure.sty. The standard styles don't appear to have this problem, though. – Audrey May 24 '12 at 15:17