Does every uncountable Borel subset of $\mathbb R$ contains a perfect subset?

Yes - this is called the perfect set property. The analytic (= continuous image of Borel) sets also have this property; for more complicated sets (e.g. complements of analytic sets), the perfect set question is undecidable from the usual axioms of set theory.

While it's trivially true for open sets, already for closed sets it takes some work (the easiest approach, given a closed set $C$, is to consider the set of elements of $C$ around which $C$ is "locally uncountable" - that is, those $c\in C$ such that every open $U$ containing $c$ has uncountable intersection with $C$).

The full result follows from Borel determinacy, which is a very hard theorem; off the top of my head I don't know a proof that doesn't use this. Kechris' book Descriptive set theory is a very good source (as is Moschovakis' book).