I will not address the READ UNCOMMITTED argument here, I'll just talk about your original question. Yes, you must use WITH(NOLOCK) on each table of the join. Your queries are not the same though.
Try this: Begin a transaction and insert a row into table1 and table2. But, don't commit or rollback the transaction. After that, your first query will return successfully and will include the uncommitted rows. Whereas, your second query will not be returned because table2 doesn't have the WITH(NOLOCK) hint on it.