There is no perfect host, I wish I could say otherwise and that you should move to this or that host and all possible issues will fade away like a small clear rain puddle in a hot summer day but that is not the network world we live in. BackupBuddy has no size or speed limits set into it, but it has to run in accordance to the server's configurations. If the server is slow or bad then naturally a site may have a harder time getting a complete backup (the bigger the site the harder it will be, it's just how servers work with max PHP runtimes).

There aren't even any hosts that are the "worst". What host is best for your site varies for each person, some sites won't have much issue with a certain host while other sites could run into issues. Though in many cases with hosts you get what you pay for: cheap hosting tends to be cheap on quality, and shared hosting is often overloaded. For some sites that could be fine, for others they (the site itself) should have something a bit higher quality.

It all comes down to the server configurations such as max_execution_time (max PHP runtime as a whole) and speed of the server (often hurt by a shared hosting being overloaded).