Does RE-BUILDing a HEAP cause downtime?
Good news: 150,000 forwarded records isn't actually that bad, depending on what kind of time span we're talking about. Forwarded records are tracked as long as the server is up (with some gotchas around a bug in specific 2012/2014 builds.)

Even when it does work online, your users can notice it depending on your IO throughput, size of the table, number of nonclustered indexes, and your workloads.

Here's how I tackle it:


List the tables with the forwarded records warnings from smallest to largest table size (not number of forwarded records)
Rebuild those tables in order, by hand, a few at a time. Don't automate this - you want to get a feel for how your system responds to rebuilding small tables. You'll learn fairly quickly if your server can keep up.
Keep an eye on your transaction log usage. If your log file is 10GB, and you're trying to rebuild a 50GB heap, you can run into problems. You can mitigate these issues by growing the log out ahead of time during maintenance windows and by doing frequent log backups while you're doing this - but I'll be honest, at 150k forwarded records across the span of a few days, I wouldn't bother going through this much work.
Going forward, work with the vendor to put a clustered key on those tables. Yes, there are times when heaps are appropriate, but if you're running into the forwarded record problem, you're probably not in one of those heap-friendly situations.