私も同じ現象に遭遇しています。症状としては、質問者の「2時間後」というものではなく、
これまで2年近く使ってきて4、5回しか遭遇していません。
ですので、質問者の原因とは異なると思いますが、他に同じ症状で困っている人の情報共有のために回答しておきます。
上記の記事には、網羅的に原因と解決方法が書かれているので、この記事を参照するのが一番良いと思います。
具体的には、上記記事に解説されている下記の項目を調べてみます。
- 電源オプションでスリープが勝手に復帰するのを止める
- コマンドプロンプト (
powercfg -waketimers) で調べる - 「自動メンテナンス」でスリープの解除を許可しない設定をする
- ネットワークアダプターでスタンバイの解除を許可しない設定をする
質問者の場合、「上記1はすでに対応している」とのことなので、それ以外を確認するのが良いでしょう。
「2時間ほどで解除される」という現象が (ほぼ) 確実に起きているのであれば、接続する周辺機器のデバイスドライバか
インストールしているソフトウェアが原因ではないかと推察されます。
上記の記事で原因が突き止められない場合、まずは、なにが原因なのか調査するのが先決でしょう。
- 接続している周辺機器があるのであれば、一旦、接続せずに現象が再現するか確認する。
- 常駐するソフトウェアを一旦、削除 (あるいは停止できれば停止) させて、2時間後に現象が再現するか確認する。
なお、Takashi NISHIIE さんの回答は、PC の使い方として正論を含んでいますが、質問者への回答に該当していません。
「2時間ほどでスリープが確実に解除される」のであれば、Windows のスリープ機能を正常に動作させていないバグであり、
この方の言う「スリープ機能を使わない」という方法は暫定的な対処方であって、根本的な解決方法ではありません!
もし、Windows Update やセキュリティソフトがスリープ状態において、自動的にスリープを解除して更新を行うのであれば、
それはそのソフトウェアの仕様上の問題であり、原因を作り出しているソフトウェア自身が問題を修正すべきです。
「スリープ解除」は、「Wake On LANでコンピュータを起動する」のように、ユーザーが意図する場合にのみ解除されるべきで、
ユーザーが意図せずに勝手に解除されてしまうような機能を作りこんでいるのだとしたら、
その機能が脆弱性となって、外部からの攻撃に利用されかねないというリスクをはらんでいると言えます。