Hi,
Are these PEs directly connected? Are there any other links between them?
Having only limited infomation about your topology, your choice is to create two TE tunnels between the PEs. While configuring them, you need to either reserve bandwidth (control plane only) or configure load-sharing value (under Interface Tunnel configuration). You will then need to force your traffic thru the tunnels, with autoroute being the easiest and the most commonly used method.
Per-packet or per-destination CEF behavior is configurable on the tunnels headend, so no problem there.
What CEF will do is it will perform it's hash functionality on incoming packet and will determine outbound interface (bucket)according to the ratios calculated from either bandwith or load-sharing config you have applied on Tunnel interfaces on tunnels headends. You can check CEF loadbalancing behavior in this case by doing "show ip cef x.x.x.x internal" command. For example, if you set load-sharing to 5 on one tunnel and to 10 on the other, you will have twice as much traffic going thru the second tunnel than thru the first one.
I believe that if you wish the scenario to work in failover fashion, rather than load-balancing (cause with even per-destination CEF and ratio highly in favor of you terrestrial link, you will still send some data thru sattelite, which is horrible), you will have to force traffic only into one of the tunnels by route-maps/statics and use the other only when main one is down....However in this case you might just use routing protocol metrics without getting into TE business :-)
HTH,
David