My daughter is living in Vancouver currently and attending school there. There really isn't anyplace you can stay where you will be within walking distance of everything. My daughter uses public transit, I usually rent a car to get to the places we can't walk to. Parking is sometimes difficult to find, and generally expensive, but it is what it is.
My last stay was at 910 Beach. It worked very well for us as the unit had a kitchen and a washer/dryer. It had one Queen and a pull out Queen sleeper sofa. Rate wise it was "reasonable" for Vancouver. Both internet and parking were extra, but even with those costs it was cheaper than many other places. It is close to the water, just across from Granville Island.
http://www.910beach.com/
Both of the Marriots you mentioned would be in good locations for walking around the "downtown" area. You would still need public transit or a car to get out to see a lot of things like Stanley Park, UBC (they have a wonderful anthropology museum there), Granville Island (unless you really like to walk a lot).