The fast-growing carsharing and ride-hailing businesses are generating economic benefits and societal impacts in the modern society. However, both have limitation to cover demand from diverse populations, e.g., travelers in low-income, underserved communities. In this paper, we consider two types of travelers: Type~1 who rent shared cars and Type~2 who need shared rides. We propose an integrated car-and-ride sharing (CRS) system to enable self-sustaining, community-based shared transportation. We design a two-phase approach, where in Phase~I, we match Type~1 drivers with Type~2 users to maximize demand coverage, and in Phase~II we solve a stochastic mixed-integer program to optimize routes and schedules for matched Type~1 and Type~2 users under random travel time. The goal is to minimize the total travel cost plus expected penalty cost of users' waiting and system overtime, and we develop an efficient decomposition algorithm for improving the computational efficiency. We demonstrate the performance of a CRS system in Washtenaw County, Michigan by testing instances generated based on census data and diverse user demand distribution patterns. Our results show high demand fulfillment rates and effective matching and scheduling with low risk of waiting and overtime. The integrated system also achieves better performance of cost and service quality if we allow vehicle relocation.