Because the theory of sheaves is a functorial theory, it has been adopted in algebraic geometry (both using the functor of points approach and the locally ringed space approach) as the "main theory" used to describe geometric data.  All sheaf data in the LRS approach can be described by bundles using the éspace étalé construction.  It's interesting to notice that the sheafification of a presheaf is the sheaf of sections of the associated éspace étalé.  

However, in differential geometry, bundles are for some reason preferred.  Is there any reason why this is true?  Are there some bundle constructions which don't have a realization as a sheaf?  Are there advantages to the bundle approach?

If $X$ is a manifold, and $E$ is a smooth vector bundle over $X$ (e.g. its tangent bundle),
then $E$ is again a manifold.  Thus working with bundles means that one doesn't have to leave
the category of objects (manifolds) under study; one just considers manifold with certain extra structure (the bundle structure).  This is a big advantage in the theory; it avoids introducing another class of objects (i.e. sheaves), and allows tools from the theory of manifolds to be applied directly to bundles too.

Here is a longer discussion, along somewhat different lines:

The historical impetus for using sheaves in algebraic geometry comes from the theory of several complex variables, and in that theory sheaves were introduced, along with cohomological techniques, because many important and non-trivial theorems can be stated as saying that certain sheaves are generated by their global sections, or have vanishing higher cohomology.  (I am thinkin of Cartan's Theorem A and B, which have as consequences many 
earlier theorems in complex analysis.)

If you read Zariski's fantastic report on sheaves in algebraic geometry, from the 50s, you will see a discussion by a master geometer of how sheaves, and especially their cohomology,
can be used as a tool to express, and generalize, earlier theorems in algebraic geometry.
Again, the questions being addressed (e.g. the completeness of the linear systems of hyperplane sections) are about the existence of global sections, and/or vanishing of higher cohomology.  (And these two usually go hand in hand; often one establishes existence results about global sections of one sheaf by showing that the higher cohomology of some related sheaf vanishes, and using a long exact cohomology sequence.)

These kinds of questions typically don't arise in differential geometry.  All the sheaves
that might be under consideration (i.e. sheaves of sections of smooth bundles) have global sections in abundance, due to the existence of partions of unity and related constructions.

There are difficult existence problems in differential geometry, to be sure: but these are very often problems in ODE or PDE, and cohomological methods are not what is required to solve them (or so it seems, based on current mathematical pratice).  One place where a sheaf theoretic perspective can be useful is in the consideration of flat (i.e. curvature zero) Riemannian manifolds; the fact that the horizontal sections of a bundle with flat connection form a local system, which in turn determines the
bundle with connection, is a useful one, which is well-expressed in sheaf theoretic language.  But there are also plenty of ways to discuss this result without sheaf-theoretic language, and in any case, it is a fairly small part of differential geometry, since typically the curvature of a metric doesn't vanish, so that sheaf-theoretic methods don't seem to have much to say.  

If you like, sheaf-theoretic methods are potentially useful for dealing with problems,
especially linear ones, in which local existence is clear, but the objects are suffiently rigid that there can be global obstructions to patching local solutions.

In differential geomtery, it is often the local questions that are hard: they become difficult non-linear PDEs.  The difficulties are not of the "patching local solutions"
kind.   There are difficult global questions too, e.g. the one solved by the Nash embedding theorem, but again, these are typically global problems of a very different type to those that are typically solved by sheaf-theoretic methods.  
