I know I asked this question a long time ago, but I decided to revisit Fluent NHibernate, and here's what I came up with:
References(x => x.LastChildRevision)
.Column("PARENT_ID")
.Not.Insert()
.Not.Update()
.Access.ReadOnly()
.NotFound.Ignore()
.Cascade.None()
.Formula("(SELECT TOP(1) CHILD_REVISION.CHILD_REVISION_ID FROM CHILD_REVISION WHERE CHILD_REVISION.PARENT_ID = PARENT_ID ORDER BY CHILD_REVISION.REVISION_NUMBER DESC)");