I would play the numbers game and look at the big picture, take all cost into account.
Staying off site -
1) Lower pricing per night, look for hidden fees such as how much to park at the resort per night? what is the resort fee? For instance DH and I just stayed in Jacksonville at the Crown Plaza the rate was good 129.00 per night was listed on the web site, then they add in resort fee was around another 30 dollar per night, then parking which was 15 dollar a night so that good rate really cost us 174.00 plus tax a night. Check out any other add ons such wifi, and such.
2) You will have your car to get back and forth to the parks, which takes up time = driving, parking, tram riding, monorail or boat ect. just to get to the parks, Paying for parking at the parks

, as well as traffic in Orlando during Christmas is

. Paying for gas
3) Sometimes the parks are at capacity during this time of year and then they close them... then you have to wait to get in.. or not

.
4) No EMH, which really helps during peak times.
5) No dinning plan option - Character meals and sit down dining price go up during peak times as well. For us we love to see the characters in their holiday attire
6) No disney magic at the resort.
Staying on site:
1) The per night will be higher - no paying for parking at a disney resort -The price you see includes the resorts fees on line.
2) Transportation - you could drive to the parks but you will not have to pay for parking or you can use disney transportation. Less time wasted in the car to and from the parks.
3) EMH -You can get to the into the parks and stay late, and have less risk of not being able to get into the park of your choice
4) Dining plan is offered, there are options for every budget and touring style, we love... love being able to have everything paid for up front, except for tips and souvniers and the all important adult beverages.
5) There is something magical when you return to the resort at night and the Disney magic is all around you. Nothing can compare with that feeling... Magical