Adding columns from joined table slows down query incredibly
A RID Lookup is a lookup into a heap table using a Row ID. The Row ID is included in a non-clustered index in order to find the rest of a table's data in the heap table. Since a heap table is a table without a clustered index and is sorted unordered, a Row ID is required for the correlation. 

My guess is that view3.UID is found easily via a non-clustered index with that column.  When you actually start asking for other columns (by specifying them in the SELECT list that are not part of that non-clustered index, Sql Server has to go find the other data items in the unordered heap - that's the RID Lookup - which can be quite expensive depending on the amount of data you're dealing with.

You 'might' see improved performance if you can identify the 'source' tables referenced in view3 and possibly 'including' your SELECT columns in supporting indexes on those source tables - this is called a 'covering index' in that the index is able to 'cover' or retrieve all of the information you're asking for without having to go elsewhere (clustered-index or heap)

This link has some good information on RID Lookups.

Here is a brief summary of the main points of the link:


  When you find an RID Lookup in a query plan, it’s a symptom. It
  indicates a database schema that breaks several rules of thumb. Those
  rules-of-thumb are:
  
  
  Each table should have a clustered index (of course there are    exceptions but we’re dealing with rules-of-thumb here).
  A non-clustered index has been created indicating that someone somewhere identified an ordering on one or more columns that made
  sense for that data.
  There is at least one query (i.e. the one that generated the RID Lookup) that needs columns that are not covered by the non-clustered
  index.
  


Something else to 'try' - use a Common Table Expression (CTE) in an attempt to force Sql Server to 'materialize' view3.  Before your main SELECT, add the CTE - this 'assumes' that no more than 2147483648 (max int value) could be returned - adjust as needed.

with View3Materialzed as
(
select top 2147483648 UID from view3 order by UID
) 


Then, use the CTE View3Materialzed in the regular joins.  I have used this technique with some success.  It may or may not help you.