Request.UrlReferrer의 경우 System.Uri를 반환합니다. 그리고 System.Uri의 ToString() 메서드의 기본 동작에 따라 말씀하신대로 디코딩 처리된 상태로 URL이 반환되게됩니다.
반면 Request.ServerVariables의 경우 System.Collections.Specialized.NameValueCollection 형태의 컬렉션 참조를 반환하며, 이 컬렉션의 인덱서 오퍼레이터는 별도의 URL 관련 변환 작업을 처리하지 않고 as-is로 서버 변수를 가져오거나 반환하는 동작만 수행하므로 원래 받았던 데이터를 그대로 내보내기 때문에 말씀하신대로 원본 그대로 반환됩니다.