One more way to do an exp/imp from one user to another is to do a full export as described above, and then to do an import using the CREATE=Y parameter. This will give you the create statements for all the objects, but will not create them in your user's schema. You can then edit the create statements to make sure all your objects belong to the correct tablespaces, load the create script, and then rerun imp with IGNORE=Y (necessary since you've already created all the objects).
Other simple things to check with import:
-- make sure you have enough space for your redo logs. IMP uses sql statements to insert data and thus generates lots of redo.
-- turn off archive logs
Another option to consider (enterprise edition only) is to do less frequent imports and to spend more time synchronizing only the statistics between the two databases.