I agree, it's just too complicated. I think the root of this problem is that async programming is inherently difficult. In the past, async code was mostly found in specialist, high-performance areas (kernels, servers, etc.) while typical code was multi-threaded. This has changed somewhat in recent years.
The ideal solution would be for browser JavaScript to be multi-threaded. This is possible to some extent with Web Workers, but they are limited, and will generally not solve the problems that Bacon.js aims to solve. If we did get proper multi-threaded js - where every thread can access the DOM in a thread-safe way, this would largely remove the need for async programming. Having said that, I expect it would then introduce a whole new set of problems with bad threading code. And in any case, while we can wish for this, it isn't available right now.
So Bacon.js and other systems like AngularJS promises are trying to wrap the async complexity. However, as you point out, they're still complex to use. One of the reasons for this is that JavaScript doesn't have a widely-supported yield function. Yield allows a piece of synchronous code to pause, while it waits for something, then resume. Without this, you need to use "continuation passing style", which severely limits the ability of a library to hide the complexity. However, some browsers (Chrome, Firefox) now support yield in JavaScript.
In the absence of threads or yield, we are largely left with simply putting up with the complexity of async programming. However, there is one other avenue to explore: making common async tasks easier. Bacon.js aims to be a fully flexible async framework, so it's hard to use. AngularJS promises can be just as bad, but certain tasks are easier. For example, you can issue a resource load, get a promise, assign it to a model, and attach the model to a template. All that is pretty simple to code, and it gives you the behaviour that the template first appears empty, and automatically populates with data when it is ready. That's a pretty good start - although if you want to customise the flow it gets more difficult.