A good dental cleaning often includes x-rays. Just like with people. It's the only way to tell if there are problems in the root. You can decline the x-rays, but I know a veterinary dental specialist who would consider it very bad practice to pull a tooth without x-rays. If she just needs a cleaning though, and there are no loose or damaged teeth then you could ask to do it without.
The vet is absolutely right about those items could break a tooth, but its up to you whether it is worth the risk. Veterinary medicine is a tough field, to be a good vet they have to tell you about the best care possible, which might include ways to prevent teeth getting broken, dental x-rays, etc. It can be a liability if they don't recommend it, but you can always talk with them and find a solution that works better for your budget. If you don't have a vet that will take the time to explain why when you ask, then maybe try someone else.
You should probably get a heartworm test done, and then start on monthly preventive. It should not decrease their immune system, there have been no studies that even suggest that. And heartworm can kill your dog. Studies about how effective various methods are can be found, so I would pick one that works for you and stick with it.
If you don't want to vaccinate yearly you can always do a vaccine titer level. This will show how much immunity your dog has to a certain virus. I just did my dogs and my dog was at risk for parvo after 5 years since her last vaccine. I do the puppy series and 1 year old boosters and then titer until they need to be revaccinated. Dogs are not immune for life, just longer than the vaccine says. And each dog will be different, depending on their immune system. I always vaccinate for rabies though, that should always be kept current.