My main question is if high amounts of blocking locks degrade Oracle server performance. I understand that it can hurt users performance, but does it cause high load on Oracle itself?
What does it mean for an Oracle database to have a high load?
If session A is blocked waiting on a row-level lock held by session B, session A will not be consuming any operating system resources. So you won't see session A using a lot of CPU cycles, for example. Session A will continue to hold whatever server resources it has acquired up to that point however-- it will continue to require space in the PGA for any collections it has created, for example. That could lead to things like swapping at the operating system level if you have too much memory stuck allocated to sessions that are blocked. Normally, though, you won't see anything at the operating system level that indicates that the database server is taxed-- the blocked session isn't going to consume any additional CPU or RAM and isn't going to do any I/O.
Of course, I'm not sure that it makes a lot of sense to talk about "server performance" in isolation from "user performance". If users aren't getting the performance they need, does it really matter whether the server has a bunch of spare CPU or not?