You can't combine queries that way with map/reduce views; they're lower-level than SQL. You'll need to create a regular view and a full-text view, then query both and find the docIDs that appear in both result sets. That's actually equivalent to what a SQL database would do under the hood.
Building too many views is pretty costly because i have a lot data.
Views are like indexes in a relational database. You'd need to set up multiple indexes to make SQL queries like the ones you listed efficient; the same goes for views.
In Couchbase Lite 2.0 (coming later this year; pre-beta dev builds available now) we're switching to a query engine based on N1QL like Couchbase Server. You won't be able to enter queries in N1QL syntax (we don't have a parser for it) but you can use a native "fluent" API to create queries that have the same semantics. This should be a better fit for what you're doing.