oracle schema grants and tablespaces
is it possible to create schema at the same tablespace and limit its grants just to some views (without giving an access to the original tables) ?


Yes. And if your concern is limited to just read-only access to those tables then you don't even need to create separate views, you can simply create new schema and grant select on those tables. 


  is it possible to create separate tablespace for that schema and create views and grants that will work across both of them ?


Yes. If you just create views on this schema then you even don't need to worry to manage separate tablespace because  views(is a named and validated SQL query) are stored in the Oracle data dictionary. 


  if both are possible than which one should be used and why?


It's up to you. In my opinion, if you place schema in to the separate tablespace then you can transport it to another database with ease. Also it makes possible to perform point-in time recovery. Additionally, we can place such tablespace to different disks as per the IO performance requirements. 

Update

You have to have granted select on FOO with grant option to user B in order for user 'B' to grant select on view to user 'C' as demonstrated below. 

SQL&gt; conn a/a
Connected.

SQL&gt; grant select on t1 to b with grant option;

Grant succeeded.

SQL&gt; conn b/b
Connected.

SQL&gt; create or replace view v_t1 as select * from a.t1;

View created.

SQL&gt; grant select on v_t1 to c;

Grant succeeded.

SQL&gt; conn c/c
Connected.
SQL&gt; select * from b.v_t1;

    ID
----------
     1