In Shakotan, seafood is the staple food, so it might be challenging for those who don't like it. I recommend Nagomi no Yado Iida.
https://yado-iida.com/en/You can book online, but you'll need to register first (it's easy).
When I stayed there about 20 years ago, the food was very nice. They use various cooking methods (grilled, boiled, fried), so even if you don't like raw fish, you'll likely find something you enjoy. Many accommodations in Shakotan are small and not listed on major booking sites, so try booking directly by clicking on them on Google Maps. Shakotan's high season is June-August, so you'll likely find many accommodations available in April.
I recommended a day trip to Otaru from Sapporo, but if you're going to Shakotan, you could also consider staying overnight in Otaru on your way from Sapporo. Otaru is a city famous for sushi, and if you like sushi, I highly recommend trying it. Besides sushi, they're also famous for Jingisukan (grilled mutton or lamb) and soup curry.
For sushi, I recommend Sushidokorokan
https://sushidokorokan.com/Reservations are required. Reservations can only be made by phone (no online reservations). The best times to call for reservations are 10:00-11:30, 16:30-17:30, and 19:30-20:30 on business days. The phone number is 0134-25-6842.
It's a small restaurant, so please understand that they may not be able to answer the phone while customers are present.
Otaru is a fairly large city, so finding parking can be a bit difficult (in Japan, you generally need to park in a parking lot, not on the side of the road). If you're from a country where traffic lanes are reversed, be careful when entering or exiting parking lots, as you might make mistakes with turns or misunderstand priority. It might be safer to park in your accommodation's parking lot and then go on foot or by bus.