Code:
this is from the crm application here (production)

select * from v$resource_limit

RESOURCE_NAME                  CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_AL LIMIT_VALU
------------------------------ ------------------- --------------- ---------- ----------
processes                                       93             102        450        450
sessions                                        93             114        500        500
enqueue_locks                                   80             124       6030       6030
enqueue_resources                               85             142       1500       1500
_lm_procs                                        0               0          0          0
lm_ress                                          0               0          0  UNLIMITED
lm_locks                                         0               0          0  UNLIMITED
lm_cache_ress                                    0               0          0  UNLIMITED
dml_locks                                        3              36       2200       2200
temporary_table_locks                            0              13  UNLIMITED  UNLIMITED
transactions                                     3              14        550        550
sort_segment_locks                               2              12  UNLIMITED  UNLIMITED
max_rollback_segments                           11              11        111        111
distributed_transactions                         0               0        137        137
mts_max_servers                                  0               0         20         20
parallel_max_servers                             0               0          6          6

look your max_utilization of sessions, it reached to 87 so obviously your count(*) from v$session wasnt correct, when you run the query the number of session had already decreased

so just increase you init.ora parameter