Can you divide $[0,1]$ into uncountably many disjoint sets? If you could do this, wouldn't it imply that $\mathbb Q$ is uncountable since each set would have a rational?

You assume that each of the pieces of your partition contains a rational - why should this be true? It is true that every nonempty open set contains a rational, but there are lots of nonempty sets of reals which don't contain any rationals - e.g. the set of irrational numbers!
Indeed, $[0, 1]$ can be written as an uncountable union: $$[0, 1]=\bigcup_{x\in[0, 1]}\{x\}.$$ "Most" of these pieces are of the form $\{x\}$ for an irrational $x$, and so don't contain a rational.

More interesting partitions are possible. For $a, b\in [0, 1]$, let $a\sim b$ if $a-b$ is rational; then the resulting equivalence classes yield a partition of $[0, 1]$ into uncountably many countably infinite pieces $$[0, 1]=\bigcup_{x\in[0, 1]}\{y: x\sim y\}.$$ 
Indeed, we can even partition $[0, 1]$ into uncountably many uncountable sets: for $x, y\in[0, 1]$, write $x\approx y$ the $2n$th binary digit of $x$ and the $2n$th binary digit of $y$ agree for all $n$ (technically there's a bit of an issue here with reals with non-unique binary expansions - the dyadic fractions - but they're not hard to deal with).
Then the $\approx$-classes partition $[0, 1]$, and there are uncountably many of them, and each is uncountable.
