The best time depends on what you plan to do. If you plan to hike, you need to go later rather than earlier because of the possibility of late spring snows; if you plan to explore Yellowstone, again, it depends on what you want to do. Jackson Hole is an easy drive from Yellowstone if you just want to walk around the town for a bit. You see the Tetons driving down from Yellowstone, and there are many places to pull over for pictures. But of course, if you want to hike, you'll need time to do it.
Lodging: we enjoyed Yellowstone cabins. They are cheap and clean and the beds were good. It's a bit like camping, which, to us, seemed appropriate for being in Yellowstone. You have a sink in your cabin and have to go a few paces for showers and toilets--definitely not far. I wouldn't want to spend the whole summer in one of the cabins, but for a few nights, they were fun.