Every continuous function is monotone on a perfect set:
Let $I=[0,1]$ and let $f:I\to\mathbb R$ be continuous (actually, Borel-measurable is enough for what follows).
Let $[I]^2$ be the set of 2-element subsets of $I$.
For all $\{a,b\}\in[I]^2$ with $a\leq b$$a\lt b$ let $c(a,b)=0$ if $f(a)\leq f(b)$$f(a)\lt f(b)$ and $c(a,b)=1$, otherwise.
Since $f$ is continuous, the set
$$\{(a,b)\in I^2:a\leq b\wedge a\not=b\wedge c(a,b)=0\}$$$$\{(a,b)\in I^2:a\lt b\wedge c(a,b)=0\}$$
is Borel in $I^2$.
By a theorem of Galvin, there is a perfect set $P\subseteq I$ such that $c$ is constant on
$[P]^2$.
From the definition of $c$ is follows that $f$ is monotone on $P$.
A source for Galvin's theorem is Kechris' book on Classical Descriptive Set Theory. If you want to avoid the use of Galvin's theorem, you can use the full strength of continuity:
Since everevery nonempty open subset of $I$ contains a perfect set, we may assume $f$ is not monotone on any nonempty open subset of $I$.
Now every nonempty open subset of $I$ has a two-element subset on which $f$ is strictly
increasing.
A straight-forward perfect set construction now gives you a perfect set on which $f$ is strictly increasing.